Devtool User Map — agentic-skills
Terminology note (2026-06-05): References to
install.shin this document reflect the installer name at time of writing. The script has since been renamed toinit.sh. SeeREADME.mdfor current commands.
Scope: maps the audience and buying context for this specific repository — the agentic-skills shared skill library for Claude Code and OpenAI Codex. Grounded in observable repo signals (README.md, docs/skills-reference.md, docs/operating-modes.md, docs/packs.md, CLAUDE.md, scripts/pack.sh, pack layout under packs/). Not a generic devtool persona sheet.
Developer users
The direct end users are individual engineers who already run at least one of Claude Code or Codex CLI locally and want to share structured workflows across sessions. Three concrete shapes:
- Solo builder / indie operator. Works across several personal repos of different kinds — a SaaS side project, a game prototype, a CLI tool. Wants domain-appropriate skills without polluting every session with irrelevant personas (game research showing up in a B2B SaaS session, or monetization research showing up in a game repo). Installs
global/*once and opts into packs per repo viascripts/pack.sh install <pack>. - Repo-embedded contributor. Joins an existing repo that already has
.agents/project.jsonand.claude/skills/or.codex/skills/symlinks committed. Expects/packor$packwith no arguments to reconcile their local checkout against the committed project designation. Does not necessarily maintainagentic-skillsitself. - Hybrid-mode orchestrator. Runs Claude Code as the planner and delegates execution to Codex via
/delegateor/handoff --target=codex(seedocs/operating-modes.md). Needs both CLIs installed, needs thehybridagent mode set in.agents/project.jsonorSKILLS_AGENT_MODE, and relies on the approval-packet contract intasks/approved-plan.md/.agents/approved-plan.json.
All three share one prerequisite: they must be comfortable with shell, git, symlinks, and editing JSON/Markdown by hand. This is an agent-harness power-user tool, not a managed product.
Economic buyers
There is no direct monetization surface in this repo — no license file gating commercial use, no paid tier, no hosted service. The real spend sits upstream:
- Claude API / Claude Max subscription (Anthropic). Claude Code is billed per API usage or via a Max subscription. Any team adopting
agentic-skillsin Claude-only or hybrid mode is implicitly paying Anthropic. - OpenAI Codex CLI subscription (OpenAI). Codex CLI billing covers codex-only and hybrid-mode execution.
- Engineering time. The dominant cost. Maintaining dual Claude/Codex mirrors under
global/andpacks/*/{claude,codex}/is a per-skill 2x cost, visible in the repo'sglobal/claude/<name>/SKILL.md+global/codex/<name>/SKILL.mdpairs.
In a team setting, the budget holder is whoever owns the "AI coding tooling" line — typically an engineering manager, head of platform, or founder/CTO at smaller shops. They are not the day-to-day user; they approve the CLI subscriptions the users depend on. agentic-skills itself is a zero-cost OSS overlay on top of those paid CLIs.
Champions
Internal advocates who pull agentic-skills into a team look like:
- Staff/principal engineers who already standardize tooling (formatters, linters, CI config) and see skill packs as the same kind of shared asset.
- DX / developer-tooling leads chartered to improve AI-assisted workflows across a codebase. The pack model (
business-app,game,devtool,code-quality,*-kanban) lets them treat agent skills as project artifacts rather than personal dotfiles. - Workflow-obsessed founders who already curate custom slash commands and want a structured place to keep them — the
create-skill→pack promoteflow inglobal/{claude,codex}/create-skill/makes the repo a natural home for personal forks.
The champion profile is consistent: someone who cares about standardized, repeatable agent behavior and is willing to invest time learning a two-layer (global + pack) mental model.
Maintainers
This is a single-user/OSS-library-style codebase. Observable maintainer surface:
- Primary maintainer. The user running these sessions (per
CLAUDE.md,tasks/history.mdcadence of near-daily updates, andlegeorge4@gmail.comin session context). Owns roadmap decisions intasks/roadmap.mdand documentation shape indocs/. - Agent co-maintainers. Claude and Codex themselves, per the workflow described in
CLAUDE.md(plan mode first,ship-one-step,commit-and-push-by-feature). Commits are signed by the human but the task stream is agent-authored. - No external contributor process is documented. There is no
CONTRIBUTING.md, no issue template, no PR template. A drive-by contributor would need to readCLAUDE.mdand thedocs/operating-modes.mdchain to figure out how to land a change. This is an adoption blocker (see below).
Operators
"Operator" in the skill contract normally means SRE / platform / runbook-owner roles. In this repo's context that maps to:
- Skill-pack operators. Users running
scripts/pack.sh install|remove|refresh|status|set-modeto wire a project into a pack.scripts/pack.sh list-packs(documented as an internal subcommand used by Codex$runrouting) is the machine-facing operator surface. - Mode resolver operators. Anyone reading
scripts/agent-mode.shoutput or settingSKILLS_AGENT_MODEin shell profiles. Typically the same person as the developer user. - Session-restart operators. A named ergonomic cost:
README.mdanddocs/packs.mdboth warn thatpack.sh refreshdoes not hot-reload an already-running CLI — users must manually start a fresh Claude Code or Codex session after changing skills. This is a recurring operator chore, not a one-time setup. - Archive operators. The archive-first replacement policy in research/spec skills (e.g. in
devtool-user-map/SKILL.md§ "Archive-First Replacement Policy") requires snapshotting old docs underdocs/history/archive/YYYY-MM-DD/HHMMSS/before substantive rewrites. That is operator discipline, not tooling-enforced.
There is no production service to page on; operations are local to a developer's machine and repo.
Use cases
Concrete workflows the repo already supports end-to-end:
- Single-repo workflow standardization. A developer installs
global/*once, runsscripts/pack.sh recommendper project, and from then on has consistent/plan,/run,/ship,/ship-end(or$plan,$run,$ship,$ship-end) semantics across projects of different kinds. - Research-driven product development. The
business-app,game, anddevtoolpacks ship a research chain (ICP / audience → journey → adoption → positioning → monetization → docs-audit). A founder validates a product concept through those sequential research skills before implementing. - Hybrid planner/executor delegation. Claude interviews and plans; Codex executes. Mediated by the approval packet in
tasks/approved-plan.md+.agents/approved-plan.json, with/delegateas the live Claude→Codex bridge and/handoff --target=codexas the async variant. - Archive-first research replacement. Research skills snapshot old canonical docs to
docs/history/archive/YYYY-MM-DD/HHMMSS/before rewriting, giving a provable chain of prior thinking without polluting the canonical path. - Behavior-preserving refactor campaigns. The
code-qualitypack (extract-shared-types,quality-sweep) runs multi-day cleanup sweeps — audit-only by default, with explicitfixandfullmodes gating behavior changes. - Project-local launcher scripts. Pack installation uses symlinks under
.claude/skills/and.codex/skills/, so the same skill body serves both CLIs without duplication at the install site. - Ship-one-step handoff.
/shipenters plan mode, writes a self-contained next-step plan, and hands off to a clear-context implementation session that implements exactly one step before stopping at the next approval UI.
Adoption blockers
Honest friction points visible in the repo itself — these are the reasons a curious developer might bounce before getting value:
- Dual Claude/Codex maintenance tax. Every non-Claude-only skill has two source files:
global/claude/<name>/SKILL.mdandglobal/codex/<name>/SKILL.md, or the pack equivalent.docs/skill-next-step-contracts.mdand recenttasks/history.mdentries ($spec-drift fix packs/business-app/*/scale-audit,$spec-drift fix approval-packet references) show the mirroring drifts in practice. Contributors must remember to update both sides. - Hybrid-mode prerequisites are multi-step. To use
hybridmode a user must: install Claude Code, install Codex CLI, setagent_modein.agents/project.json(or exportSKILLS_AGENT_MODE), understand the approval-packet schema (specs/approved-plan.schema.json), and readdocs/operating-modes.mdend-to-end. That's a real cliff for first-time users. - Install is symlink-based and requires CLI restart.
install.shandscripts/pack.sh refreshwrite filesystem symlinks; changes are not visible until the Claude Code or Codex session restarts. Documented but still a foot-gun — users assume hot reload and get confused. - Operating-modes document is long and dense.
docs/operating-modes.mdis the authoritative reference, but it is also the longest single doc in the repo. The mode-signal precedence, approval-packet lifecycle, and per-skill degradation matrix take sustained reading. There is no shorter "5-minute start" version. - No CONTRIBUTING guidance. New contributors have to infer the workflow from
CLAUDE.mdand scatteredtasks/*files. The absence of an onboarding doc biases contribution toward the primary maintainer and the agent co-maintainers. - Asymmetric Claude-only surface is a stumbling block.
/delegateexists underglobal/claude/with no Codex mirror, which is correct given hybrid semantics but surprising. The recent$reconcile-dev-docs fix skills-referencesession added README and skills-reference entries to name this asymmetry — prior to that, a Codex user could reasonably expect$delegateand get confused when it was missing. - Project designation file
.agents/project.jsonis not always present. The devtool research chain assumes it, but the file can be absent on a fresh checkout (it is in this repo at time of writing). Skills that key off project type degrade to guided recommendation flows, which is fine — but the docs don't always make the degraded path obvious. - Terminology overhead. "Global", "pack", "skill", "operating mode", "approval packet", "archive-first", "implementation-safe vs review-only", "ship-one-step" — the vocabulary is rich and self-consistent but has no glossary in one place. A casual reader runs out of slots quickly.
- No test harness for skill contracts.
scripts/skill-deps.shandscripts/skill-versions.shcatch broken references and missing versions, but there is no test that asserts a skill's documented behavior matches its SKILL.md. Drift is caught byspec-driftandreconcile-dev-docsruns rather than CI — and perCLAUDE.md, "No GitHub Actions" is an explicit project rule, so there is no automated gate at all.