thachvd-kit 1.0.27 → 1.0.29

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2,17 +2,30 @@
2
2
 
3
3
  Read this after `thachvd-kit init`. The kit gives every member one entry point, then selects only the process and expertise the task needs.
4
4
 
5
- ## Start Every Task With /task
5
+ ## Forge Command Map
6
6
 
7
- Use `/task <request>` before editing whenever the route is not already obvious. It must produce:
7
+ | Client | Task | Fast | Debug | Research | Review | Release |
8
+ |---|---|---|---|---|---|---|
9
+ | Codex | `$forge-task` | `$forge-fast` | `$forge-debug` | `$forge-research` | `$forge-review` | `$forge-release` |
10
+ | Antigravity | `/forge-task` | `/forge-fast` | `/forge-debug` | `/forge-research` | `/forge-review` | `/forge-release` |
11
+ | Claude Code | `/forge-task` | `/forge-fast` | `/forge-debug` | `/forge-research` | `/forge-review` | `/forge-release` |
12
+ | Cursor | `/forge-task` | `/forge-fast` | `/forge-debug` | `/forge-research` | `/forge-review` | `/forge-release` |
13
+
14
+ Forge commands accept free-form text after the command and continue the selected workflow in the same turn. Plain questions remain normal chat; edit requests without a command are implicitly routed as `forge-task`.
15
+
16
+ Codex Forge skills live in `~/.codex/skills/forge-*/SKILL.md`. Antigravity Forge workflows live in `.agent/workflows/forge-*.md`. Claude Code Forge commands live in `.claude/commands/forge-*.md`. Cursor Forge commands live in `.cursor/commands/forge-*.md`.
17
+
18
+ ## Start Every Task With Forge
19
+
20
+ Use the matching Forge command before editing whenever the request is not a simple question. `forge-task` must route internally and continue; it must not stop by asking the member to type a second command.
8
21
 
9
22
  ```text
10
- ROUTE: question | simple | feature | bug | review | release | multi-domain
23
+ ROUTE: question | fast | feature | bug | research | review | release | multi-domain
11
24
  WORKFLOW: [exact .agent/workflows/<name>.md file]
12
25
  SKILLS: [matching skills, or none]
13
26
  AGENTS: [matching specialist agents, or none]
14
- GATE: fast-path | standard
15
- NEXT: [the next command or action]
27
+ GATE: fast-path | standard | human-approval
28
+ ACTION: [what the agent is doing next in this turn]
16
29
  ```
17
30
 
18
31
  A workflow is the process and its gates. A skill is the method or checklist. An agent is the specialist role. Chat alone is not a route: the member must select the route and invoke the matching workflow or explicitly choose the question path.
@@ -22,22 +35,23 @@ A workflow is the process and its gates. A skill is the method or checklist. An
22
35
  | Situation | Command | Gate | Required next step |
23
36
  |---|---|---|---|
24
37
  | Explain, inspect, or brainstorm only | direct answer or `/brainstorm` | none | no code until the request becomes actionable |
25
- | One obvious local fix | `/simple <request>` | fast-path | inspect -> edit -> focused verify |
26
- | New behavior, multi-file change, unclear scope, or >~30 min | `/task` -> `/brainstorm` -> `/spec` when needed -> `/plan` | standard | wait for approval before implementation |
27
- | Bug, regression, failing test, or unknown error | `/debug <symptom>` | bug | reproduce -> isolate -> regression test -> fix -> verify |
28
- | Pre-merge or independent review | `/review` | review | five-axis review; resolve blocking findings |
29
- | Version, tag, npm publish, or deployment | `/release` | release | release checklist; never fast-path |
38
+ | One obvious local fix | `/forge-fast <request>` | fast-path | inspect -> edit -> focused verify |
39
+ | New behavior, multi-file change, unclear scope, or >~30 min | `/forge-task <request>` | standard | route -> research/spec/plan -> approval when required -> continue |
40
+ | Bug, regression, failing test, or unknown error | `/forge-debug <symptom>` | bug | reproduce -> isolate -> regression test -> fix -> verify |
41
+ | Research request | `/forge-research <question>` | research | evidence report, no edits |
42
+ | Pre-merge or independent review | `/forge-review` | review | five-axis review; resolve blocking findings |
43
+ | Version, tag, npm publish, or deployment | `/forge-release` | release | release checklist; never fast-path |
30
44
  | Frontend + backend + data/security together | `/orchestrate` | standard | plan -> approval -> specialist work -> integration verify |
31
45
 
32
46
  ## Standard Feature Flow
33
47
 
34
- The gated sequence is Spec -> Plan -> Implement -> Review: `/task` -> `/brainstorm` -> `/spec` when scope is ambiguous or multi-file -> `/plan` -> user approves the plan -> implementation -> `/test` -> `/review` -> final verification -> commit/push.
48
+ The gated sequence is Spec -> Plan -> Implement -> Review. `/forge-task` manages this sequence internally and pauses only at the explicit user approval gate before implementation.
35
49
 
36
50
  The plan is a gate, not a suggestion. Do not start product-code implementation before explicit approval. Load only the relevant specialist agent and skills, such as `$frontend-design`, `$api-design`, or `$webapp-testing`.
37
51
 
38
52
  ## Bug Fix Flow
39
53
 
40
- Use `/debug <symptom>`, not the feature flow, when something is failing or the root cause is unknown:
54
+ Use `/forge-debug <symptom>`, not the feature flow, when something is failing or the root cause is unknown:
41
55
 
42
56
  1. Capture the exact symptom, environment, reproduction, and expected result.
43
57
  2. Inspect the relevant code path with MCP/codegraph when available.
@@ -51,7 +65,7 @@ Load `$systematic-debugging`, the `debugger` agent, and `testing-patterns` for t
51
65
 
52
66
  ## Simple Fast Path
53
67
 
54
- Use `/simple <request>` only when the change is one obvious file, the result is unambiguous, and it changes no behavior, API, schema, security, CI, dependency, workflow, or release contract. Before editing, state:
68
+ Use `/forge-fast <request>` only when the change is one obvious file, the result is unambiguous, and it changes no behavior, API, schema, security, CI, dependency, workflow, or release contract. Before editing, state:
55
69
 
56
70
  ```text
57
71
  FAST_PATH: simple-fix
@@ -59,18 +73,18 @@ REASON: [why Spec/Plan/Review are not needed]
59
73
  SCOPE: [file or narrow area]
60
74
  ```
61
75
 
62
- This bypasses only Spec, Plan, and the feature/refactor Review gate. It never bypasses inspection, focused verification, or reporting evidence. If the scope expands, stop and re-route with `/task`.
76
+ This bypasses only Spec, Plan, and the feature/refactor Review gate. It never bypasses inspection, focused verification, or reporting evidence. If the scope expands, stop and re-route internally through `forge-task`.
63
77
 
64
78
  ## Command And Skill Map
65
79
 
66
80
  - `/brainstorm`: clarify intent and tradeoffs; no code.
67
- - `/spec`: define requirements and acceptance criteria; no code.
81
+ - `forge-research`: evidence-based codebase/technical/domain research; no product-code edits.
68
82
  - `/plan`: create an approved implementation plan; no code before approval.
69
83
  - `/enhance` or `/create`: implement an approved feature with the relevant specialist agent.
70
- - `/debug`: systematic root-cause investigation and regression protection.
84
+ - `forge-debug`: systematic root-cause investigation and regression protection.
71
85
  - `/test`: add or run tests and assess coverage.
72
86
  - `/review`: five-axis review before completion or merge.
73
- - `/release`: verify, version, tag, publish, and verify npm output.
87
+ - `forge-release`: verify, version, tag, publish, and verify npm output.
74
88
  - `$clean-code` and `$verification-before-completion`: default implementation hygiene.
75
89
  - `$webapp-testing`: browser/UI verification; use Playwright when available.
76
90
 
@@ -4,7 +4,7 @@
4
4
 
5
5
  1. Read AGENTS.md.
6
6
  2. Read .agent/docs/project.md.
7
- 3. Route the request with `/task <request>` when the path is not obvious.
7
+ 3. Use `/forge-task <request>` (or `$forge-task <request>` in Codex) when the request changes code and the path is not obvious.
8
8
  4. Read only the relevant docs under .agent/agents, .agent/skills, .claude/skills, and .agent/workflows.
9
9
  5. Check if MCP servers (like `codegraph`) are active/available and prioritize using them as the primary entry point to search and locate files, symbols, and code blocks.
10
10
 
@@ -13,11 +13,12 @@
13
13
  | Situation | Command | Workflow / gate |
14
14
  |---|---|---|
15
15
  | Question or analysis only | direct answer | no edits |
16
- | One obvious local fix | `/simple` | `.agent/workflows/simple.md`, fast-path |
17
- | Bug, regression, failing test, or unknown error | `/debug` | `.agent/workflows/debug.md`, evidence-first |
18
- | New behavior, multi-file change, or unclear scope | `/brainstorm` -> `/spec` when needed -> `/plan` | spec/plan approval -> implement -> review |
19
- | Pre-merge review | `/review` | `.agent/workflows/review.md`, five-axis |
20
- | npm version, tag, publish, or deployment | `/release` | `.agent/workflows/release.md`, release gate |
16
+ | One obvious local fix | `/forge-fast` | `.agent/workflows/simple.md`, fast-path |
17
+ | Bug, regression, failing test, or unknown error | `/forge-debug` | `.agent/workflows/debug.md`, evidence-first |
18
+ | Research request | `/forge-research` | evidence report, no edits |
19
+ | New behavior, multi-file change, or unclear scope | `/forge-task` | research/spec/plan approval -> implement -> review |
20
+ | Pre-merge review | `/forge-review` | `.agent/workflows/review.md`, five-axis |
21
+ | npm version, tag, publish, or deployment | `/forge-release` | `.agent/workflows/release.md`, release gate |
21
22
  | Several specialist domains | `/orchestrate` | plan -> approval -> parallel work -> integration verify |
22
23
 
23
24
  If a task is not clearly simple, use the standard flow. Never use the fast path for behavior, API, schema, security, CI, dependency, workflow, or release changes.
@@ -35,7 +36,7 @@ If a task is not clearly simple, use the standard flow. Never use the fast path
35
36
 
36
37
  ## Implementation Flow
37
38
 
38
- For `/simple` fixes, state the fast-path decision before editing:
39
+ For `/forge-fast` fixes, state the fast-path decision before editing:
39
40
 
40
41
  ```text
41
42
  FAST_PATH: simple-fix
@@ -52,7 +53,7 @@ Then:
52
53
  5. Run verification (prioritize using Playwright MCP for web/UI changes to automate verification and capture screenshots).
53
54
  6. Summarize changed files and verification evidence.
54
55
 
55
- For bugs, use `/debug` with `$systematic-debugging`, the `debugger` agent, and `testing-patterns`: reproduce, isolate the root cause, add regression protection, make the smallest fix, and verify.
56
+ For bugs, use `/forge-debug` with `$systematic-debugging`, the `debugger` agent, and `testing-patterns`: reproduce, isolate the root cause, add regression protection, make the smallest fix, and verify.
56
57
 
57
58
  For features or refactors, this flow runs *inside* the gated flow defined in AGENTS.md (spec -> plan -> implement -> review) — steps 3-5 above are the "Implement" phase, and step 6 is not a substitute for the mandatory `.agent/workflows/review.md` gate.
58
59
 
@@ -60,7 +61,7 @@ For features or refactors, this flow runs *inside* the gated flow defined in AGE
60
61
 
61
62
  A feature/refactor task is only complete when all of the following hold — not when code compiles or tests pass:
62
63
 
63
- The Spec checkbox may be skipped only when the documented `/simple` fast-path protocol is stated and its criteria are met.
64
+ The Spec checkbox may be skipped only when the documented `/forge-fast` protocol is stated and its criteria are met.
64
65
 
65
66
  - [ ] `.agent/workflows/spec.md` exit criteria met (or explicitly skipped as a trivial/self-contained change)
66
67
  - [ ] `.agent/workflows/plan.md` produced a plan file, approved by the user
@@ -29,19 +29,21 @@ Load only the agent, skill, or workflow files relevant to the current task.
29
29
 
30
30
  ## Execution
31
31
 
32
- - Route every task before editing. Use `/task <request>` when the correct path is not obvious.
32
+ - Route every task before editing. Use `/forge-task <request>` when the correct path is not obvious.
33
+ - Forge workflows are available as `/forge-task`, `/forge-fast`, `/forge-debug`, `/forge-research`, `/forge-review`, and `/forge-release`.
33
34
  - Questions and analysis: answer directly; do not edit code.
34
- - Simple fix: use `/simple <request>` only for one-file, unambiguous changes with no behavior or contract change.
35
- - Bug or failing behavior: use `/debug <symptom>` and follow the evidence-first root-cause flow.
36
- - Feature or refactor: use `/brainstorm` for discovery, `/spec` for ambiguous or multi-file scope, then `/plan`, wait for approval, implement, test, and `/review`.
37
- - Pre-merge review: use `/review`.
38
- - Release or npm publish: use `/release`; never use the simple fast path.
35
+ - Simple fix: use `/forge-fast <request>` only for one-file, unambiguous changes with no behavior or contract change.
36
+ - Bug or failing behavior: use `/forge-debug <symptom>` and follow the evidence-first root-cause flow.
37
+ - Research: use `/forge-research <question>` for evidence-based research without product-code edits.
38
+ - Feature or refactor: use `/forge-task <request>`; it handles research, spec, plan, approval, implementation, test, and review in sequence.
39
+ - Pre-merge review: use `/forge-review`.
40
+ - Release or npm publish: use `/forge-release`; never use the simple fast path.
39
41
  - UI work: use relevant frontend design skills before editing.
40
42
  - Security or deploy work: run the matching checklist before claiming done.
41
43
 
42
- ### Fast Path (`/simple`)
44
+ ### Fast Path (`/forge-fast`)
43
45
 
44
- The fast path bypasses only Spec, Plan, and the feature/refactor Review gate for a trivial change. It never bypasses inspection or verification. State `FAST_PATH: simple-fix`, the reason, and the narrow scope before editing. Re-route with `/task` if the scope expands.
46
+ The fast path bypasses only Spec, Plan, and the feature/refactor Review gate for a trivial change. It never bypasses inspection or verification. State `FAST_PATH: simple-fix`, the reason, and the narrow scope before editing. Re-route with `/forge-task` if the scope expands.
45
47
 
46
48
  ### Gated Flow (feature or refactor)
47
49
 
@@ -0,0 +1,12 @@
1
+ ---
2
+ description: Investigate and fix a bug with evidence-first root-cause analysis.
3
+ argument-hint: [SYMPTOM]
4
+ ---
5
+
6
+ # Forge Debug
7
+
8
+ Symptom:
9
+
10
+ $ARGUMENTS
11
+
12
+ Read `.agent/workflows/debug.md`, use `$systematic-debugging`, the `debugger` agent, and `testing-patterns` when available. Reproduce the symptom, inspect the relevant code path with codegraph/MCP, form and test hypotheses, identify the root cause, add regression protection when practical, make the smallest fix, and verify it. Do not patch by guesswork and do not stop by asking the member to invoke another command.
@@ -0,0 +1,22 @@
1
+ ---
2
+ description: Execute a trivial, unambiguous change with focused verification.
3
+ argument-hint: [REQUEST]
4
+ ---
5
+
6
+ # Forge Fast Path
7
+
8
+ Request:
9
+
10
+ $ARGUMENTS
11
+
12
+ Use this path only for one obvious file or tiny local change with no behavior, API, schema, security, CI, dependency, workflow, or release contract change.
13
+
14
+ Before editing, state exactly:
15
+
16
+ ```text
17
+ FAST_PATH: simple-fix
18
+ REASON: [why Spec, Plan, and feature Review are not needed]
19
+ SCOPE: [file or narrow area]
20
+ ```
21
+
22
+ Inspect the target, make the smallest change, run focused verification, and report evidence. If the scope expands, stop and internally re-route through the appropriate Forge workflow. Never skip inspection or verification.
@@ -0,0 +1,12 @@
1
+ ---
2
+ description: Verify, version, publish, and verify the thachvd-kit npm release.
3
+ argument-hint: [RELEASE_REQUEST]
4
+ ---
5
+
6
+ # Forge Release
7
+
8
+ Release request:
9
+
10
+ $ARGUMENTS
11
+
12
+ Read `.agent/workflows/release.md` and run the release gate. Confirm the working tree, review status, version, npm authentication, verification output, and package contents before publishing. Never use the fast path. Do not run `npm publish` until the release gate is satisfied and the human has confirmed the final version and publish action. After publishing, verify the registry version and the installed package output.
@@ -0,0 +1,24 @@
1
+ ---
2
+ description: Research the codebase, technical topic, or domain without editing product code.
3
+ argument-hint: [QUESTION]
4
+ ---
5
+
6
+ # Forge Research
7
+
8
+ Research question:
9
+
10
+ $ARGUMENTS
11
+
12
+ Do not edit product code. First classify the research as codebase, external technical, or domain research. For codebase research, use codegraph/MCP first. For external research, use authoritative current sources only when needed and cite them. Return exactly:
13
+
14
+ ```text
15
+ RESEARCH_STATUS: complete | blocked
16
+ QUESTION: [what was investigated]
17
+ ASSUMPTIONS: [explicit assumptions]
18
+ FINDINGS: [evidence-based findings]
19
+ SOURCES: [file paths, symbols, MCP evidence, or URLs]
20
+ RISKS: [known risks and unknowns]
21
+ OPTIONS: [possible approaches and tradeoffs]
22
+ RECOMMENDATION: [recommended direction]
23
+ OPEN_QUESTIONS: [unresolved questions]
24
+ ```
@@ -0,0 +1,12 @@
1
+ ---
2
+ description: Review a change across correctness, simplicity, architecture, security, and performance.
3
+ argument-hint: [SCOPE]
4
+ ---
5
+
6
+ # Forge Review
7
+
8
+ Review scope:
9
+
10
+ $ARGUMENTS
11
+
12
+ Read `.agent/workflows/review.md` and inspect the relevant diff, task, and verification evidence. Review all five axes. Report findings first, ordered by severity, using `BLOCKING`, `SUGGESTION`, `NIT`, or `QUESTION`. Do not edit code during review unless the member explicitly asks for fixes after the findings.
@@ -0,0 +1,37 @@
1
+ ---
2
+ description: Route a request and continue the selected Forge workflow in this turn.
3
+ argument-hint: [REQUEST]
4
+ ---
5
+
6
+ # Forge Task Orchestrator
7
+
8
+ The request supplied with this command is:
9
+
10
+ $ARGUMENTS
11
+
12
+ Read `AGENTS.md`, `.agent/docs/project.md`, and `.agent/docs/workflow.md` before editing.
13
+
14
+ Classify the request internally as `question`, `fast`, `feature`, `bug`, `research`, `review`, `release`, or `multi-domain`. Then continue the selected workflow in this same turn. Do not stop after printing a `NEXT` command and do not ask the member to invoke another Forge command for ordinary routing.
15
+
16
+ Use this compact status header when useful:
17
+
18
+ ```text
19
+ REQUEST: [original request]
20
+ ROUTE: [route]
21
+ WORKFLOW: [exact workflow file]
22
+ SKILLS: [matching skills]
23
+ AGENTS: [matching agents]
24
+ GATE: fast-path | standard | human-approval
25
+ ACTION: [what you are doing now]
26
+ ```
27
+
28
+ Rules:
29
+
30
+ - Questions and analysis: answer directly with no edits.
31
+ - Trivial one-file changes: apply the `forge-fast` protocol, including focused verification.
32
+ - Bugs or unknown failures: reproduce, isolate root cause, add regression protection, fix, and verify.
33
+ - Research: use codegraph/MCP first for repository questions, use authoritative external sources when needed, and do not edit code.
34
+ - Features and refactors: follow spec -> plan -> approval -> implement -> test -> review. Stop only at the documented human approval gate.
35
+ - Reviews: run the five-axis review and report findings first.
36
+ - Releases: follow `.agent/workflows/release.md`; never use the fast path.
37
+ - If the request is empty or unsafe to classify, ask one concise clarification question.
@@ -6,6 +6,8 @@ description: Fast path for one-file, unambiguous fixes with no behavior or share
6
6
 
7
7
  $ARGUMENTS
8
8
 
9
+ Codex UI command: `/prompts:simple`. The `/simple` name below describes the workflow; it is not a built-in Codex slash command.
10
+
9
11
  ## Use Only When
10
12
 
11
13
  - The change is limited to one obvious file or one tiny local edit.
@@ -6,6 +6,8 @@ description: Route every task to the smallest safe workflow, fast path, bug flow
6
6
 
7
7
  $ARGUMENTS
8
8
 
9
+ Codex UI command: `/prompts:task`. The `/task` name below describes the workflow; it is not a built-in Codex slash command.
10
+
9
11
  ## Purpose
10
12
 
11
13
  Use `/task` at the start of a task when you are unsure which workflow, skill, or specialist agent applies. This command routes the request before implementation.
package/README.md CHANGED
@@ -60,37 +60,49 @@ Skills work best through progressive disclosure: the agent should first see skil
60
60
  - Keep `.agent/skills` as the complete shared source from the kit.
61
61
  - Let `thachvd-kit` copy selected skills to `~/.codex/skills/` for Codex and `.claude/skills` for Claude Code.
62
62
  - Make every `SKILL.md` frontmatter `description` specific: include when to use it, trigger phrases, and boundaries.
63
- - Run `thachvd-kit --help` to see a compact workflow guide without adding that guidance to every agent context. It recommends when to use `/task`, `/simple`, `/brainstorm`, `/plan`, `/create`, `/enhance`, `/debug`, `/test`, `/preview`, `/deploy`, `/review`, `/release`, `/status`, and `/orchestrate`.
63
+ - Run `thachvd-kit --help` to see a compact workflow guide. Forge commands appear after `init` and a client restart.
64
64
  - Use explicit prompts when implicit matching misses, for example `Use $webapp-testing to verify this UI` or `Use $clean-code before refactoring`.
65
65
  - Restart Codex or Claude Code if a newly copied or edited skill does not appear.
66
66
 
67
67
  ## Development Workflow
68
68
 
69
- After install, every AI client starts at `/task <request>` when the route is not already obvious. `/task` selects the smallest safe workflow and the relevant skills/agents; it does not force the full feature gate onto every request.
69
+ After install, Forge is the member-facing command suite. It accepts free-form text after the command, routes the request, and continues the selected workflow in the same turn. Questions remain normal chat; edit requests without a command are implicitly routed as `forge-task`.
70
+
71
+ ### Client Commands
72
+
73
+ | Client | Task | Fast path | Bug flow | Research | Review | Release |
74
+ |---|---|---|---|---|---|
75
+ | Codex | `$forge-task` | `$forge-fast` | `$forge-debug` | `$forge-research` | `$forge-review` | `$forge-release` |
76
+ | Antigravity | `/forge-task` | `/forge-fast` | `/forge-debug` | `/forge-research` | `/forge-review` | `/forge-release` |
77
+ | Claude Code | `/forge-task` | `/forge-fast` | `/forge-debug` | `/forge-research` | `/forge-review` | `/forge-release` |
78
+ | Cursor | `/forge-task` | `/forge-fast` | `/forge-debug` | `/forge-research` | `/forge-review` | `/forge-release` |
79
+
80
+ `init` installs these from `commands/`: Codex skills in `~/.codex/skills/forge-*`, Antigravity workflows in `.agent/workflows/forge-*`, Claude Code commands in `.claude/commands/forge-*`, and Cursor commands in `.cursor/commands/forge-*`. Restart or reload the client after installation.
70
81
 
71
82
  | Situation | Command | Required flow |
72
83
  |---|---|---|
73
84
  | Question or analysis | direct answer | no edits |
74
- | One obvious local fix | `/simple <request>` | inspect → edit → focused verify |
75
- | Bug or failing behavior | `/debug <symptom>` | reproduce → root cause → regression test → fix → verify |
76
- | New behavior or refactor | `/task` → `/brainstorm` → `/spec` when needed → `/plan` | approval → implement → test → `/review` |
77
- | Pre-merge review | `/review` | five-axis review; resolve blocking findings |
78
- | npm version/tag/publish | `/release` | release verification; never fast path |
85
+ | One obvious local fix | `/forge-fast <request>` | inspect → edit → focused verify |
86
+ | Bug or failing behavior | `/forge-debug <symptom>` | reproduce → root cause → regression test → fix → verify |
87
+ | Research request | `/forge-research <question>` | evidence report; no product-code edits |
88
+ | New behavior or refactor | `/forge-task <request>` | route → research/spec/plan → approval when required → implement → test → review |
89
+ | Pre-merge review | `/forge-review` | five-axis review; resolve blocking findings |
90
+ | npm version/tag/publish | `/forge-release` | release verification; never fast path |
79
91
  | Several specialist domains | `/orchestrate` | plan → approval → parallel work → integration verify |
80
92
 
81
93
  ### Standard Feature Flow
82
94
 
83
- `/task` → `/brainstorm` when needed → `/spec` for ambiguous or multi-file scope → `/plan` → explicit user approval → implementation → `/test` → `/review` → final verification → commit/push.
95
+ `/forge-task` manages Spec → Plan → Implement → Review internally and pauses only at the explicit user approval gate before implementation. It does not stop by printing a command for the member to run next.
84
96
 
85
97
  Workflow files define process and gates. Skills define methods/checklists. Agents provide specialist ownership. Members should invoke the command, not only describe the work in chat.
86
98
 
87
99
  ### Bug Fix Flow
88
100
 
89
- Use `/debug` for regressions, failing tests, exceptions, incorrect output, or any symptom with an unknown root cause. Load `$systematic-debugging`, the `debugger` agent, and `testing-patterns`; reproduce the issue, inspect the code path, test hypotheses, add regression protection, make the smallest root-cause fix, and verify. Use `/review` when the change is cross-file or affects a shared contract.
101
+ Use `/forge-debug` for regressions, failing tests, exceptions, incorrect output, or any symptom with an unknown root cause. Load `$systematic-debugging`, the `debugger` agent, and `testing-patterns`; reproduce the issue, inspect the code path, test hypotheses, add regression protection, make the smallest root-cause fix, and verify. Use `/forge-review` when the change is cross-file or affects a shared contract.
90
102
 
91
103
  ### Simple Fast Path
92
104
 
93
- Use `/simple` only for one obvious file, an unambiguous result, and no behavior, API, schema, security, CI, dependency, workflow, or release contract change. Before editing, state:
105
+ Use `/forge-fast` only for one obvious file, an unambiguous result, and no behavior, API, schema, security, CI, dependency, workflow, or release contract change. Before editing, state:
94
106
 
95
107
  ```text
96
108
  FAST_PATH: simple-fix
@@ -98,7 +110,7 @@ REASON: [why Spec/Plan/Review are not needed]
98
110
  SCOPE: [file or narrow area]
99
111
  ```
100
112
 
101
- This bypasses only Spec, Plan, and the feature/refactor Review gate. It never bypasses inspection or verification. If the scope expands, stop and run `/task` again.
113
+ This bypasses only Spec, Plan, and the feature/refactor Review gate. It never bypasses inspection or verification. If the scope expands, re-route internally through `forge-task`.
102
114
 
103
115
  Claude Code has a Stop hook that checks the standard feature/refactor gate. Codex, Antigravity, and Cursor use the same written routing rules through `AGENTS.md`, `.cursorrules`, and `.agent/rules/GEMINI.md`.
104
116
 
package/bin/cli.js CHANGED
@@ -7,8 +7,9 @@ const prompts = require('prompts');
7
7
  const pc = require('picocolors');
8
8
  const packageJson = require('../package.json');
9
9
 
10
- const sourceDir = path.resolve(__dirname, '..');
11
- const targetDir = process.cwd();
10
+ const sourceDir = path.resolve(__dirname, '..');
11
+ const targetDir = process.cwd();
12
+ const FORGE_COMMANDS = ['forge-task', 'forge-fast', 'forge-debug', 'forge-research', 'forge-review', 'forge-release'];
12
13
 
13
14
  // --- Skill Resolver ---
14
15
 
@@ -145,33 +146,34 @@ ${pc.bold('What gets generated:')}
145
146
  .claude/skills/ Selected Claude Code project skills copied from .agent/skills
146
147
 
147
148
  ${pc.bold('Workflow guide:')}
148
- Every task /task Classify the request and select the workflow, skill, and agent
149
- Small obvious fix /simple Fast path; skips spec/plan/review but still verifies
149
+ Every task /forge-task Route and continue the selected workflow in this turn
150
+ Small obvious fix /forge-fast Fast path; skips spec/plan/review but still verifies
150
151
  Idea is fuzzy /brainstorm Explore options, tradeoffs, and recommended direction
151
- Scope needs a contract /spec Define requirements and acceptance criteria; no code yet
152
+ Research first /forge-research Evidence-based research; no product-code edits
153
+ Scope needs a contract /forge-task Handles research, spec, plan approval, implementation, and review
152
154
  New app from scratch /create Turn an app idea into plan + implementation flow
153
155
  Feature is clear /plan Create docs/PLAN-*.md first, no code yet
154
156
  Existing app update /enhance Add or change a feature in an existing codebase
155
- Bug or failing behavior /debug Investigate symptoms, hypotheses, root cause, fix
157
+ Bug or failing behavior /forge-debug Investigate symptoms, root cause, fix
156
158
  UI / UX work ui-ux-pro-max, frontend-specialist, $frontend-design, $webapp-testing
157
159
  Run or add tests /test Generate tests, run tests, check coverage
158
160
  Preview locally /preview Start, stop, restart, or health-check dev server
159
161
  Deploy / infra /deploy Release, hosting, Docker, cloud, environment setup
160
- Pre-merge review /review Run the five-axis review before calling work complete
161
- Npm package release /release Verify, version, tag, publish, and verify the package
162
+ Pre-merge review /forge-review Run the five-axis review before calling work complete
163
+ Npm package release /forge-release Verify, version, tag, publish, and verify the package
162
164
  Project state /status Summarize stack, progress, preview, pending work
163
165
  Multi-domain work /orchestrate Coordinate frontend, backend, data, security, QA
164
166
 
165
167
  ${pc.bold('Common explicit skill prompts:')}
166
- Use /task to route this request before editing.
167
- Use /simple for a one-file fix with no behavior or contract change.
168
+ Use /forge-task to route and continue a request in one turn.
169
+ Use /forge-fast for a one-file fix with no behavior or contract change.
168
170
  Use /brainstorm for this feature idea before planning.
169
- Use /spec when requirements or scope need an explicit contract.
171
+ Use /forge-task when requirements or scope need an explicit contract.
170
172
  Use /plan for this feature; do not write code yet.
171
173
  Use /enhance to implement this planned feature.
172
- Use /debug for this failing behavior and find the root cause before editing.
174
+ Use /forge-debug for this failing behavior and find the root cause before editing.
173
175
  Use /review before claiming this feature/refactor complete.
174
- Use /release for npm versioning and publishing.
176
+ Use /forge-release for npm versioning and publishing.
175
177
  Use $clean-code before editing this module.
176
178
  Use $systematic-debugging to investigate this bug.
177
179
  Use $webapp-testing to verify the UI with Playwright.
@@ -919,18 +921,20 @@ If any \`.agent/docs/*.md\` file still contains \`TODO: refine\`, update the doc
919
921
 
920
922
  ## Task Flow
921
923
 
922
- Route every task before editing. Use \`/task <request>\` when the correct path is not obvious.
924
+ Forge is the member-facing command suite. Use \`/forge-task <request>\` in Antigravity, Claude Code, or Cursor, and \`$forge-task <request>\` in Codex. The command classifies the request and continues the selected workflow in the same turn; it must not stop at a member-facing \`NEXT\` command.
923
925
 
924
- - Questions and analysis: answer directly, cite relevant files when useful, and do not edit code.
925
- - Simple fix: use \`/simple <request>\` only for one-file, unambiguous changes with no behavior or contract change.
926
- - Bug or failing behavior: use \`/debug <symptom>\` and follow the evidence-first root-cause flow.
927
- - Feature or refactor: use \`/brainstorm\` for discovery, \`/spec\` for ambiguous or multi-file scope, then \`/plan\`, wait for approval, implement, test, and \`/review\`.
928
- - Pre-merge review: use \`/review\` even when the implementation itself was done by another client or member.
929
- - Release or npm publish: use \`/release\`; release work never uses the simple fast path.
926
+ - Questions and analysis without a command: answer directly and do not edit code.
927
+ - Edit requests without a command: route internally as \`forge-task\` before editing.
928
+ - Simple fix: use \`/forge-fast <request>\` only for one-file, unambiguous changes with no behavior or contract change.
929
+ - Bug or failing behavior: use \`/forge-debug <symptom>\` and follow the evidence-first root-cause flow.
930
+ - Research: use \`/forge-research <question>\`; research does not edit product code.
931
+ - Feature or refactor: \`forge-task\` handles research/brainstorm, spec, plan approval, implementation, test, and review in sequence.
932
+ - Pre-merge review: use \`/forge-review\` even when implementation was done by another client or member.
933
+ - Release or npm publish: use \`/forge-release\`; release work never uses the fast path.
930
934
  - Multi-domain work: use \`.agent/workflows/orchestrate.md\` and route to the relevant specialist docs.
931
935
  - UI work: read \`.agent/agents/frontend-specialist.md\` and applicable design skills before editing.
932
936
 
933
- ### Fast Path (\`/simple\`)
937
+ ### Fast Path (Forge \`forge-fast\`)
934
938
 
935
939
  The fast path intentionally bypasses only Spec, Plan, and the feature/refactor Review gate for a trivial change. It never bypasses inspection, focused verification, or reporting evidence. The agent must state this protocol before editing:
936
940
 
@@ -940,7 +944,7 @@ REASON: [why the change is one-file and unambiguous]
940
944
  SCOPE: [file or narrow area]
941
945
  \`\`\`
942
946
 
943
- If the scope expands, stop and re-route with \`/task\`. Do not silently skip gates for work that changes behavior, APIs, schemas, security, CI, dependencies, workflows, or release state.
947
+ If the scope expands, stop and internally re-route through \`forge-task\`. Do not silently skip gates for work that changes behavior, APIs, schemas, security, CI, dependencies, workflows, or release state.
944
948
 
945
949
  ### Gated Flow (feature or refactor)
946
950
 
@@ -949,7 +953,7 @@ If the scope expands, stop and re-route with \`/task\`. Do not silently skip gat
949
953
  3. **Implement** — smallest coherent change per the approved plan, with focused tests for changed behavior.
950
954
  4. **Review** — run \`.agent/workflows/review.md\` (five-axis review) before the change is considered done. All 🔴 BLOCKING items must be resolved or explicitly accepted with rationale.
951
955
 
952
- A feature/refactor task is not "done" until step 4's exit criteria are met — passing tests alone does not satisfy the gate. Simple fixes use the explicit \`/simple\` fast path above. See \`.agent/docs/getting-started.md\` for the complete route guide.
956
+ A feature/refactor task is not "done" until step 4's exit criteria are met — passing tests alone does not satisfy the gate. Simple fixes use the explicit \`forge-fast\` path above. See \`.agent/docs/getting-started.md\` for the complete route guide.
953
957
 
954
958
  ## Skill Loading
955
959
 
@@ -1183,9 +1187,9 @@ function generateWorkflowDoc() {
1183
1187
 
1184
1188
  ## Before Every Task
1185
1189
 
1186
- 1. Read AGENTS.md.
1187
- 2. Read .agent/docs/project.md.
1188
- 3. Route the request with \`/task <request>\` when the path is not obvious.
1190
+ 1. Read AGENTS.md.
1191
+ 2. Read .agent/docs/project.md.
1192
+ 3. Use \`/forge-task <request>\` (or \`$forge-task <request>\` in Codex) when the request changes code and the path is not obvious.
1189
1193
  4. Read only the relevant docs under .agent/agents, .agent/skills, .claude/skills, and .agent/workflows.
1190
1194
  5. Check if MCP servers (like \`codegraph\`) are active/available and prioritize using them as the primary entry point to search and locate files, symbols, and code blocks.
1191
1195
 
@@ -1194,11 +1198,12 @@ function generateWorkflowDoc() {
1194
1198
  | Situation | Command | Workflow / gate |
1195
1199
  |---|---|---|
1196
1200
  | Question or analysis only | direct answer | no edits |
1197
- | One obvious local fix | \`/simple\` | \`.agent/workflows/simple.md\`, fast-path |
1198
- | Bug, regression, failing test, or unknown error | \`/debug\` | \`.agent/workflows/debug.md\`, evidence-first |
1199
- | New behavior, multi-file change, or unclear scope | \`/brainstorm\` -> \`/spec\` when needed -> \`/plan\` | spec/plan approval -> implement -> review |
1200
- | Pre-merge review | \`/review\` | \`.agent/workflows/review.md\`, five-axis |
1201
- | npm version, tag, publish, or deployment | \`/release\` | \`.agent/workflows/release.md\`, release gate |
1201
+ | One obvious local fix | \`/forge-fast\` | \`.agent/workflows/simple.md\`, fast-path |
1202
+ | Bug, regression, failing test, or unknown error | \`/forge-debug\` | \`.agent/workflows/debug.md\`, evidence-first |
1203
+ | Research request | \`/forge-research\` | evidence report, no edits |
1204
+ | New behavior, multi-file change, or unclear scope | \`/forge-task\` | research/spec/plan approval -> implement -> review |
1205
+ | Pre-merge review | \`/forge-review\` | \`.agent/workflows/review.md\`, five-axis |
1206
+ | npm version, tag, publish, or deployment | \`/forge-release\` | \`.agent/workflows/release.md\`, release gate |
1202
1207
  | Several specialist domains | \`/orchestrate\` | plan -> approval -> parallel work -> integration verify |
1203
1208
 
1204
1209
  If a task is not clearly simple, use the standard flow. Never use the fast path for behavior, API, schema, security, CI, dependency, workflow, or release changes.
@@ -1216,7 +1221,7 @@ If a task is not clearly simple, use the standard flow. Never use the fast path
1216
1221
 
1217
1222
  ## Implementation Flow
1218
1223
 
1219
- For \`/simple\` fixes, state the fast-path decision before editing:
1224
+ For \`/forge-fast\` fixes, state the fast-path decision before editing:
1220
1225
 
1221
1226
  \`\`\`text
1222
1227
  FAST_PATH: simple-fix
@@ -1233,7 +1238,7 @@ Then:
1233
1238
  5. Run verification (prioritize using Playwright MCP for web/UI changes to automate verification and capture screenshots).
1234
1239
  6. Summarize changed files and verification evidence.
1235
1240
 
1236
- For bugs, use \`/debug\` with \`$systematic-debugging\`, the \`debugger\` agent, and \`testing-patterns\`: reproduce, isolate the root cause, add regression protection, make the smallest fix, and verify.
1241
+ For bugs, use \`/forge-debug\` with \`$systematic-debugging\`, the \`debugger\` agent, and \`testing-patterns\`: reproduce, isolate the root cause, add regression protection, make the smallest fix, and verify.
1237
1242
 
1238
1243
  For features or refactors, this flow runs *inside* the gated flow defined in AGENTS.md (spec -> plan -> implement -> review) — steps 3-5 above are the "Implement" phase, and step 6 is not a substitute for the mandatory \`.agent/workflows/review.md\` gate.
1239
1244
 
@@ -1241,7 +1246,7 @@ For features or refactors, this flow runs *inside* the gated flow defined in AGE
1241
1246
 
1242
1247
  A feature/refactor task is only complete when all of the following hold — not when code compiles or tests pass:
1243
1248
 
1244
- The Spec checkbox may be skipped only when the documented \`/simple\` fast-path protocol is stated and its criteria are met.
1249
+ The Spec checkbox may be skipped only when the documented \`/forge-fast\` protocol is stated and its criteria are met.
1245
1250
 
1246
1251
  - [ ] \`.agent/workflows/spec.md\` exit criteria met (or explicitly skipped as a trivial/self-contained change)
1247
1252
  - [ ] \`.agent/workflows/plan.md\` produced a plan file, approved by the user
@@ -1265,17 +1270,30 @@ function generateGettingStartedDoc() {
1265
1270
 
1266
1271
  Read this after \`thachvd-kit init\`. The kit gives every member one entry point, then selects only the process and expertise the task needs.
1267
1272
 
1268
- ## Start Every Task With /task
1273
+ ## Forge Command Map
1269
1274
 
1270
- Use \`/task <request>\` before editing whenever the route is not already obvious. It must produce:
1275
+ | Client | Task | Fast | Debug | Research | Review | Release |
1276
+ |---|---|---|---|---|---|---|
1277
+ | Codex | \`$forge-task\` | \`$forge-fast\` | \`$forge-debug\` | \`$forge-research\` | \`$forge-review\` | \`$forge-release\` |
1278
+ | Antigravity | \`/forge-task\` | \`/forge-fast\` | \`/forge-debug\` | \`/forge-research\` | \`/forge-review\` | \`/forge-release\` |
1279
+ | Claude Code | \`/forge-task\` | \`/forge-fast\` | \`/forge-debug\` | \`/forge-research\` | \`/forge-review\` | \`/forge-release\` |
1280
+ | Cursor | \`/forge-task\` | \`/forge-fast\` | \`/forge-debug\` | \`/forge-research\` | \`/forge-review\` | \`/forge-release\` |
1281
+
1282
+ Forge commands accept free-form text after the command and continue the selected workflow in the same turn. Plain questions remain normal chat; edit requests without a command are implicitly routed as \`forge-task\`.
1283
+
1284
+ Codex Forge skills live in \`~/.codex/skills/forge-*/SKILL.md\`. Antigravity Forge workflows live in \`.agent/workflows/forge-*.md\`. Claude Code Forge commands live in \`.claude/commands/forge-*.md\`. Cursor Forge commands live in \`.cursor/commands/forge-*.md\`.
1285
+
1286
+ ## Start Every Task With Forge
1287
+
1288
+ Use the matching Forge command before editing whenever the request is not a simple question. \`forge-task\` must route internally and continue; it must not stop by asking the member to type a second command.
1271
1289
 
1272
1290
  \`\`\`text
1273
- ROUTE: question | simple | feature | bug | review | release | multi-domain
1291
+ ROUTE: question | fast | feature | bug | research | review | release | multi-domain
1274
1292
  WORKFLOW: [exact .agent/workflows/<name>.md file]
1275
1293
  SKILLS: [matching skills, or none]
1276
1294
  AGENTS: [matching specialist agents, or none]
1277
- GATE: fast-path | standard
1278
- NEXT: [the next command or action]
1295
+ GATE: fast-path | standard | human-approval
1296
+ ACTION: [what the agent is doing next in this turn]
1279
1297
  \`\`\`
1280
1298
 
1281
1299
  A workflow is the process and its gates. A skill is the method or checklist. An agent is the specialist role. Chat alone is not a route: the member must select the route and invoke the matching workflow or explicitly choose the question path.
@@ -1285,22 +1303,23 @@ A workflow is the process and its gates. A skill is the method or checklist. An
1285
1303
  | Situation | Command | Gate | Required next step |
1286
1304
  |---|---|---|---|
1287
1305
  | Explain, inspect, or brainstorm only | direct answer or \`/brainstorm\` | none | no code until the request becomes actionable |
1288
- | One obvious local fix | \`/simple <request>\` | fast-path | inspect -> edit -> focused verify |
1289
- | New behavior, multi-file change, unclear scope, or >~30 min | \`/task\` -> \`/brainstorm\` -> \`/spec\` when needed -> \`/plan\` | standard | wait for approval before implementation |
1290
- | Bug, regression, failing test, or unknown error | \`/debug <symptom>\` | bug | reproduce -> isolate -> regression test -> fix -> verify |
1291
- | Pre-merge or independent review | \`/review\` | review | five-axis review; resolve blocking findings |
1292
- | Version, tag, npm publish, or deployment | \`/release\` | release | release checklist; never fast-path |
1306
+ | One obvious local fix | \`/forge-fast <request>\` | fast-path | inspect -> edit -> focused verify |
1307
+ | New behavior, multi-file change, unclear scope, or >~30 min | \`/forge-task <request>\` | standard | route -> research/spec/plan -> approval when required -> continue |
1308
+ | Bug, regression, failing test, or unknown error | \`/forge-debug <symptom>\` | bug | reproduce -> isolate -> regression test -> fix -> verify |
1309
+ | Research request | \`/forge-research <question>\` | research | evidence report, no edits |
1310
+ | Pre-merge or independent review | \`/forge-review\` | review | five-axis review; resolve blocking findings |
1311
+ | Version, tag, npm publish, or deployment | \`/forge-release\` | release | release checklist; never fast-path |
1293
1312
  | Frontend + backend + data/security together | \`/orchestrate\` | standard | plan -> approval -> specialist work -> integration verify |
1294
1313
 
1295
1314
  ## Standard Feature Flow
1296
1315
 
1297
- The gated sequence is Spec -> Plan -> Implement -> Review: \`/task\` -> \`/brainstorm\` -> \`/spec\` when scope is ambiguous or multi-file -> \`/plan\` -> user approves the plan -> implementation -> \`/test\` -> \`/review\` -> final verification -> commit/push.
1316
+ The gated sequence is Spec -> Plan -> Implement -> Review. \`/forge-task\` manages this sequence internally and pauses only at the explicit user approval gate before implementation.
1298
1317
 
1299
1318
  The plan is a gate, not a suggestion. Do not start product-code implementation before explicit approval. Load only the relevant specialist agent and skills, such as \`$frontend-design\`, \`$api-design\`, or \`$webapp-testing\`.
1300
1319
 
1301
1320
  ## Bug Fix Flow
1302
1321
 
1303
- Use \`/debug <symptom>\`, not the feature flow, when something is failing or the root cause is unknown:
1322
+ Use \`/forge-debug <symptom>\`, not the feature flow, when something is failing or the root cause is unknown:
1304
1323
 
1305
1324
  1. Capture the exact symptom, environment, reproduction, and expected result.
1306
1325
  2. Inspect the relevant code path with MCP/codegraph when available.
@@ -1314,7 +1333,7 @@ Load \`$systematic-debugging\`, the \`debugger\` agent, and \`testing-patterns\`
1314
1333
 
1315
1334
  ## Simple Fast Path
1316
1335
 
1317
- Use \`/simple <request>\` only when the change is one obvious file, the result is unambiguous, and it changes no behavior, API, schema, security, CI, dependency, workflow, or release contract. Before editing, state:
1336
+ Use \`/forge-fast <request>\` only when the change is one obvious file, the result is unambiguous, and it changes no behavior, API, schema, security, CI, dependency, workflow, or release contract. Before editing, state:
1318
1337
 
1319
1338
  \`\`\`text
1320
1339
  FAST_PATH: simple-fix
@@ -1322,18 +1341,18 @@ REASON: [why Spec/Plan/Review are not needed]
1322
1341
  SCOPE: [file or narrow area]
1323
1342
  \`\`\`
1324
1343
 
1325
- This bypasses only Spec, Plan, and the feature/refactor Review gate. It never bypasses inspection, focused verification, or reporting evidence. If the scope expands, stop and re-route with \`/task\`.
1344
+ This bypasses only Spec, Plan, and the feature/refactor Review gate. It never bypasses inspection, focused verification, or reporting evidence. If the scope expands, stop and re-route internally through \`forge-task\`.
1326
1345
 
1327
1346
  ## Command And Skill Map
1328
1347
 
1329
1348
  - \`/brainstorm\`: clarify intent and tradeoffs; no code.
1330
- - \`/spec\`: define requirements and acceptance criteria; no code.
1349
+ - \`forge-research\`: evidence-based codebase/technical/domain research; no product-code edits.
1331
1350
  - \`/plan\`: create an approved implementation plan; no code before approval.
1332
1351
  - \`/enhance\` or \`/create\`: implement an approved feature with the relevant specialist agent.
1333
- - \`/debug\`: systematic root-cause investigation and regression protection.
1352
+ - \`forge-debug\`: systematic root-cause investigation and regression protection.
1334
1353
  - \`/test\`: add or run tests and assess coverage.
1335
1354
  - \`/review\`: five-axis review before completion or merge.
1336
- - \`/release\`: verify, version, tag, publish, and verify npm output.
1355
+ - \`forge-release\`: verify, version, tag, publish, and verify npm output.
1337
1356
  - \`$clean-code\` and \`$verification-before-completion\`: default implementation hygiene.
1338
1357
  - \`$webapp-testing\`: browser/UI verification; use Playwright when available.
1339
1358
 
@@ -1536,7 +1555,7 @@ function copyAgentFolder() {
1536
1555
  return { copied, skipped: 0 };
1537
1556
  }
1538
1557
 
1539
- function copySelectedSkillFolders(data, assumeYes) {
1558
+ function copySelectedSkillFolders(data, assumeYes) {
1540
1559
  const srcSkills = path.join(sourceDir, '.agent', 'skills');
1541
1560
  if (!fs.existsSync(srcSkills)) return { copied: 0, skipped: 0, missing: 0, skills: [] };
1542
1561
 
@@ -1579,8 +1598,114 @@ function copySelectedSkillFolders(data, assumeYes) {
1579
1598
  }
1580
1599
  }
1581
1600
 
1582
- return { copied, skipped: 0, missing, skills: selectedSkills };
1583
- }
1601
+ return { copied, skipped: 0, missing, skills: selectedSkills };
1602
+ }
1603
+
1604
+ function copyCodexPrompts() {
1605
+ const srcPrompts = path.join(sourceDir, 'prompts');
1606
+ const codexPromptsDir = homePath('.codex', 'prompts');
1607
+ if (!fs.existsSync(srcPrompts) || !codexPromptsDir) {
1608
+ return { copied: 0, prompts: [] };
1609
+ }
1610
+
1611
+ let copied = 0;
1612
+ const prompts = [];
1613
+ fs.mkdirSync(codexPromptsDir, { recursive: true });
1614
+ for (const entry of fs.readdirSync(srcPrompts, { withFileTypes: true })) {
1615
+ if (!entry.isFile() || !entry.name.endsWith('.md')) continue;
1616
+ fs.copyFileSync(path.join(srcPrompts, entry.name), path.join(codexPromptsDir, entry.name));
1617
+ copied++;
1618
+ prompts.push(path.basename(entry.name, '.md'));
1619
+ }
1620
+ return { copied, prompts };
1621
+ }
1622
+
1623
+ function copyClientWorkflowCommands() {
1624
+ const srcPrompts = path.join(sourceDir, 'prompts');
1625
+ const claudeSkillsDir = path.join(targetDir, '.claude', 'skills');
1626
+ const cursorCommandsDir = path.join(targetDir, '.cursor', 'commands');
1627
+ if (!fs.existsSync(srcPrompts)) {
1628
+ return { claude: 0, cursor: 0, prompts: [] };
1629
+ }
1630
+
1631
+ let claude = 0;
1632
+ let cursor = 0;
1633
+ const prompts = [];
1634
+ for (const entry of fs.readdirSync(srcPrompts, { withFileTypes: true })) {
1635
+ if (!entry.isFile() || !entry.name.endsWith('.md')) continue;
1636
+ const name = path.basename(entry.name, '.md');
1637
+ const sourcePath = path.join(srcPrompts, entry.name);
1638
+ const sourceContent = fs.readFileSync(sourcePath, 'utf8');
1639
+ const cursorContent = sourceContent.replace(/^---\r?\n[\s\S]*?\r?\n---\r?\n/, '');
1640
+ fs.mkdirSync(path.join(claudeSkillsDir, name), { recursive: true });
1641
+ fs.copyFileSync(sourcePath, path.join(claudeSkillsDir, name, 'SKILL.md'));
1642
+ fs.mkdirSync(cursorCommandsDir, { recursive: true });
1643
+ fs.writeFileSync(path.join(cursorCommandsDir, entry.name), cursorContent, 'utf8');
1644
+ claude++;
1645
+ cursor++;
1646
+ prompts.push(name);
1647
+ }
1648
+ return { claude, cursor, prompts };
1649
+ }
1650
+
1651
+ function stripFrontmatter(content) {
1652
+ return content.replace(/^---\r?\n[\s\S]*?\r?\n---\r?\n/, '').trimStart();
1653
+ }
1654
+
1655
+ function copyForgeCommands() {
1656
+ const srcCommands = path.join(sourceDir, 'commands');
1657
+ const codexSkillsDir = homePath('.codex', 'skills');
1658
+ if (!fs.existsSync(srcCommands)) {
1659
+ return { antigravity: 0, claude: 0, cursor: 0, codex: 0, commands: [] };
1660
+ }
1661
+
1662
+ const destinations = {
1663
+ antigravity: path.join(targetDir, '.agent', 'workflows'),
1664
+ claude: path.join(targetDir, '.claude', 'commands'),
1665
+ cursor: path.join(targetDir, '.cursor', 'commands')
1666
+ };
1667
+ let antigravity = 0;
1668
+ let claude = 0;
1669
+ let cursor = 0;
1670
+ let codex = 0;
1671
+ const commands = [];
1672
+
1673
+ for (const commandName of FORGE_COMMANDS) {
1674
+ const filename = `${commandName}.md`;
1675
+ const sourcePath = path.join(srcCommands, filename);
1676
+ if (!fs.existsSync(sourcePath)) continue;
1677
+ const sourceContent = fs.readFileSync(sourcePath, 'utf8');
1678
+ const body = stripFrontmatter(sourceContent);
1679
+
1680
+ fs.mkdirSync(destinations.antigravity, { recursive: true });
1681
+ fs.copyFileSync(sourcePath, path.join(destinations.antigravity, filename));
1682
+ antigravity++;
1683
+
1684
+ fs.mkdirSync(destinations.claude, { recursive: true });
1685
+ fs.copyFileSync(sourcePath, path.join(destinations.claude, filename));
1686
+ claude++;
1687
+
1688
+ fs.mkdirSync(destinations.cursor, { recursive: true });
1689
+ fs.writeFileSync(path.join(destinations.cursor, filename), body, 'utf8');
1690
+ cursor++;
1691
+
1692
+ if (codexSkillsDir) {
1693
+ const skillDir = path.join(codexSkillsDir, commandName);
1694
+ fs.mkdirSync(skillDir, { recursive: true });
1695
+ const skillBody = body.replace(/\$ARGUMENTS/g, 'the request supplied with this skill');
1696
+ fs.writeFileSync(
1697
+ path.join(skillDir, 'SKILL.md'),
1698
+ `---\nname: ${commandName}\ndescription: ${sourceContent.match(/^description:\s*(.+)$/m)?.[1] || `Run ${commandName}`}\n---\n\nThis skill is invoked as $${commandName}. Treat the user's text supplied with the skill as the request.\n\n${skillBody}`,
1699
+ 'utf8'
1700
+ );
1701
+ codex++;
1702
+ }
1703
+
1704
+ commands.push(commandName);
1705
+ }
1706
+
1707
+ return { antigravity, claude, cursor, codex, commands };
1708
+ }
1584
1709
 
1585
1710
  async function writeGeneratedFile(relativePath, content, assumeYes) {
1586
1711
  const outputPath = path.join(targetDir, relativePath);
@@ -1913,12 +2038,27 @@ async function main() {
1913
2038
  console.log(` ${pc.yellow('~')} ${pc.bold('.agent/')} already exists - ${skipped} file${skipped !== 1 ? 's' : ''} skipped (no overwrite)`);
1914
2039
  }
1915
2040
 
1916
- const nativeSkills = copySelectedSkillFolders(data, assumeYes);
2041
+ const nativeSkills = copySelectedSkillFolders(data, assumeYes);
1917
2042
  if (nativeSkills.copied > 0) {
1918
2043
  console.log(` ${pc.green('OK')} Copied native skills to ${pc.bold('~/.codex/skills/')} and ${pc.bold('.claude/skills/')} (${nativeSkills.skills.join(', ')})`);
1919
2044
  } else if (nativeSkills.skipped > 0) {
1920
2045
  console.log(` ${pc.yellow('~')} Native skills already exist - ${nativeSkills.skipped} file${nativeSkills.skipped !== 1 ? 's' : ''} skipped`);
1921
- }
2046
+ }
2047
+
2048
+ const codexPrompts = copyCodexPrompts();
2049
+ if (codexPrompts.copied > 0) {
2050
+ console.log(` ${pc.green('OK')} Installed Codex custom prompts in ${pc.bold('~/.codex/prompts/')} (${codexPrompts.prompts.map(name => `/prompts:${name}`).join(', ')})`);
2051
+ }
2052
+
2053
+ const legacyClientCommands = copyClientWorkflowCommands();
2054
+ if (legacyClientCommands.claude > 0 || legacyClientCommands.cursor > 0) {
2055
+ console.log(` ${pc.dim('~')} Preserved legacy workflow aliases for Claude Code and Cursor (${legacyClientCommands.claude}/${legacyClientCommands.cursor})`);
2056
+ }
2057
+
2058
+ const forgeCommands = copyForgeCommands();
2059
+ if (forgeCommands.commands.length > 0) {
2060
+ console.log(` ${pc.green('OK')} Installed Forge commands (${forgeCommands.commands.join(', ')}) for Antigravity (${forgeCommands.antigravity}), Claude Code (${forgeCommands.claude}), Cursor (${forgeCommands.cursor}), and Codex skills (${forgeCommands.codex})`);
2061
+ }
1922
2062
 
1923
2063
 
1924
2064
  const generatedFiles = [
@@ -1964,8 +2104,13 @@ async function main() {
1964
2104
  - ${pc.bold('.cursorrules')} Cursor entry
1965
2105
  - ${pc.bold('.agent/docs/')} scan-based project rules, including ${pc.bold('getting-started.md')} (standard flow vs fast path)
1966
2106
  - ${pc.bold('.agent/')} skills, workflows, agents, and rules
1967
- - ${pc.bold('~/.codex/skills/')} selected Codex skills installed globally (visible in $ menu)
1968
- - ${pc.bold('.claude/skills/')} selected Claude Code native skills
2107
+ - ${pc.bold('~/.codex/skills/')} selected Codex skills installed globally (visible in $ menu)
2108
+ - ${pc.bold('~/.codex/skills/forge-*/')} Forge Codex skills (visible as $forge-task, $forge-fast, and related skills)
2109
+ - ${pc.bold('~/.codex/prompts/')} legacy Codex prompts retained for compatibility
2110
+ - ${pc.bold('.claude/skills/')} selected Claude Code native skills
2111
+ - ${pc.bold('.claude/commands/forge-*.md')} Forge Claude Code commands (visible as /forge-task and related commands)
2112
+ - ${pc.bold('.cursor/commands/forge-*.md')} Forge Cursor commands (visible as /forge-task and related commands)
2113
+ - ${pc.bold('.agent/workflows/forge-*.md')} Forge Antigravity workflows (visible as /forge-task and related commands)
1969
2114
  - ${pc.bold('.claude/settings.json')} Definition-of-Done Stop hook (Claude Code only — blocks reporting a feature/refactor "done" without a plan + review pass)
1970
2115
 
1971
2116
  ${pc.bold('MCP/tooling setup:')}
@@ -0,0 +1,12 @@
1
+ ---
2
+ description: Investigate and fix a bug with evidence-first root-cause analysis.
3
+ argument-hint: [SYMPTOM]
4
+ ---
5
+
6
+ # Forge Debug
7
+
8
+ Symptom:
9
+
10
+ $ARGUMENTS
11
+
12
+ Read `.agent/workflows/debug.md`, use `$systematic-debugging`, the `debugger` agent, and `testing-patterns` when available. Reproduce the symptom, inspect the relevant code path with codegraph/MCP, form and test hypotheses, identify the root cause, add regression protection when practical, make the smallest fix, and verify it. Do not patch by guesswork and do not stop by asking the member to invoke another command.
@@ -0,0 +1,22 @@
1
+ ---
2
+ description: Execute a trivial, unambiguous change with focused verification.
3
+ argument-hint: [REQUEST]
4
+ ---
5
+
6
+ # Forge Fast Path
7
+
8
+ Request:
9
+
10
+ $ARGUMENTS
11
+
12
+ Use this path only for one obvious file or tiny local change with no behavior, API, schema, security, CI, dependency, workflow, or release contract change.
13
+
14
+ Before editing, state exactly:
15
+
16
+ ```text
17
+ FAST_PATH: simple-fix
18
+ REASON: [why Spec, Plan, and feature Review are not needed]
19
+ SCOPE: [file or narrow area]
20
+ ```
21
+
22
+ Inspect the target, make the smallest change, run focused verification, and report evidence. If the scope expands, stop and internally re-route through the appropriate Forge workflow. Never skip inspection or verification.
@@ -0,0 +1,12 @@
1
+ ---
2
+ description: Verify, version, publish, and verify the thachvd-kit npm release.
3
+ argument-hint: [RELEASE_REQUEST]
4
+ ---
5
+
6
+ # Forge Release
7
+
8
+ Release request:
9
+
10
+ $ARGUMENTS
11
+
12
+ Read `.agent/workflows/release.md` and run the release gate. Confirm the working tree, review status, version, npm authentication, verification output, and package contents before publishing. Never use the fast path. Do not run `npm publish` until the release gate is satisfied and the human has confirmed the final version and publish action. After publishing, verify the registry version and the installed package output.
@@ -0,0 +1,24 @@
1
+ ---
2
+ description: Research the codebase, technical topic, or domain without editing product code.
3
+ argument-hint: [QUESTION]
4
+ ---
5
+
6
+ # Forge Research
7
+
8
+ Research question:
9
+
10
+ $ARGUMENTS
11
+
12
+ Do not edit product code. First classify the research as codebase, external technical, or domain research. For codebase research, use codegraph/MCP first. For external research, use authoritative current sources only when needed and cite them. Return exactly:
13
+
14
+ ```text
15
+ RESEARCH_STATUS: complete | blocked
16
+ QUESTION: [what was investigated]
17
+ ASSUMPTIONS: [explicit assumptions]
18
+ FINDINGS: [evidence-based findings]
19
+ SOURCES: [file paths, symbols, MCP evidence, or URLs]
20
+ RISKS: [known risks and unknowns]
21
+ OPTIONS: [possible approaches and tradeoffs]
22
+ RECOMMENDATION: [recommended direction]
23
+ OPEN_QUESTIONS: [unresolved questions]
24
+ ```
@@ -0,0 +1,12 @@
1
+ ---
2
+ description: Review a change across correctness, simplicity, architecture, security, and performance.
3
+ argument-hint: [SCOPE]
4
+ ---
5
+
6
+ # Forge Review
7
+
8
+ Review scope:
9
+
10
+ $ARGUMENTS
11
+
12
+ Read `.agent/workflows/review.md` and inspect the relevant diff, task, and verification evidence. Review all five axes. Report findings first, ordered by severity, using `BLOCKING`, `SUGGESTION`, `NIT`, or `QUESTION`. Do not edit code during review unless the member explicitly asks for fixes after the findings.
@@ -0,0 +1,37 @@
1
+ ---
2
+ description: Route a request and continue the selected Forge workflow in this turn.
3
+ argument-hint: [REQUEST]
4
+ ---
5
+
6
+ # Forge Task Orchestrator
7
+
8
+ The request supplied with this command is:
9
+
10
+ $ARGUMENTS
11
+
12
+ Read `AGENTS.md`, `.agent/docs/project.md`, and `.agent/docs/workflow.md` before editing.
13
+
14
+ Classify the request internally as `question`, `fast`, `feature`, `bug`, `research`, `review`, `release`, or `multi-domain`. Then continue the selected workflow in this same turn. Do not stop after printing a `NEXT` command and do not ask the member to invoke another Forge command for ordinary routing.
15
+
16
+ Use this compact status header when useful:
17
+
18
+ ```text
19
+ REQUEST: [original request]
20
+ ROUTE: [route]
21
+ WORKFLOW: [exact workflow file]
22
+ SKILLS: [matching skills]
23
+ AGENTS: [matching agents]
24
+ GATE: fast-path | standard | human-approval
25
+ ACTION: [what you are doing now]
26
+ ```
27
+
28
+ Rules:
29
+
30
+ - Questions and analysis: answer directly with no edits.
31
+ - Trivial one-file changes: apply the `forge-fast` protocol, including focused verification.
32
+ - Bugs or unknown failures: reproduce, isolate root cause, add regression protection, fix, and verify.
33
+ - Research: use codegraph/MCP first for repository questions, use authoritative external sources when needed, and do not edit code.
34
+ - Features and refactors: follow spec -> plan -> approval -> implement -> test -> review. Stop only at the documented human approval gate.
35
+ - Reviews: run the five-axis review and report findings first.
36
+ - Releases: follow `.agent/workflows/release.md`; never use the fast path.
37
+ - If the request is empty or unsafe to classify, ask one concise clarification question.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "thachvd-kit",
3
- "version": "1.0.27",
3
+ "version": "1.0.29",
4
4
  "description": "Cross-agent project rules bootstrap kit for Codex, Antigravity, and Claude Code",
5
5
  "bin": {
6
6
  "thachvd-kit": "./bin/cli.js"
@@ -9,10 +9,12 @@
9
9
  ".agent",
10
10
  "agents",
11
11
  "bin",
12
+ "commands",
12
13
  "kit",
13
14
  "rules",
14
15
  "scripts",
15
16
  "skills",
17
+ "prompts",
16
18
  "workflows",
17
19
  "README.md",
18
20
  "LICENSE"
@@ -0,0 +1,11 @@
1
+ ---
2
+ description: Investigate a bug with evidence, root-cause analysis, regression protection, and verification.
3
+ argument-hint: [SYMPTOM]
4
+ ---
5
+
6
+ Read and follow `.agent/workflows/debug.md` in the current repository.
7
+
8
+ Bug or symptom:
9
+ $ARGUMENTS
10
+
11
+ Use `$systematic-debugging`, the `debugger` agent, and `testing-patterns` when available. Reproduce and isolate the root cause before editing.
@@ -0,0 +1,11 @@
1
+ ---
2
+ description: Run the npm release workflow with verification, versioning, tagging, publishing, and registry checks.
3
+ argument-hint: [RELEASE_REQUEST]
4
+ ---
5
+
6
+ Read and follow `.agent/workflows/release.md` in the current repository.
7
+
8
+ Release request:
9
+ $ARGUMENTS
10
+
11
+ Do not publish until the release gate and `npm run release:verify` pass.
@@ -0,0 +1,11 @@
1
+ ---
2
+ description: Run the fast path for one-file, unambiguous fixes with verification.
3
+ argument-hint: [TASK]
4
+ ---
5
+
6
+ Read and follow `.agent/workflows/simple.md` in the current repository.
7
+
8
+ Request:
9
+ $ARGUMENTS
10
+
11
+ Use the fast path only when its criteria are met. State `FAST_PATH: simple-fix`, `REASON`, and `SCOPE` before editing. Never skip verification.
@@ -0,0 +1,11 @@
1
+ ---
2
+ description: Define requirements and acceptance criteria before planning or implementation.
3
+ argument-hint: [REQUEST]
4
+ ---
5
+
6
+ Read and follow `.agent/workflows/spec.md` in the current repository.
7
+
8
+ Request:
9
+ $ARGUMENTS
10
+
11
+ Do not write product code. Stop at the spec gate and wait for human confirmation.
@@ -0,0 +1,12 @@
1
+ ---
2
+ description: Route the current request to the smallest safe workflow before editing.
3
+ argument-hint: [TASK]
4
+ ---
5
+
6
+ Read and follow `.agent/workflows/task.md` in the current repository.
7
+
8
+ Route this request before editing:
9
+
10
+ $ARGUMENTS
11
+
12
+ Return the required ROUTE, WORKFLOW, SKILLS, AGENTS, GATE, and NEXT fields. Do not edit code while routing.
@@ -6,6 +6,8 @@ description: Fast path for one-file, unambiguous fixes with no behavior or share
6
6
 
7
7
  $ARGUMENTS
8
8
 
9
+ Codex UI command: `/prompts:simple`. The `/simple` name below describes the workflow; it is not a built-in Codex slash command.
10
+
9
11
  ## Use Only When
10
12
 
11
13
  - The change is limited to one obvious file or one tiny local edit.
package/workflows/task.md CHANGED
@@ -6,6 +6,8 @@ description: Route every task to the smallest safe workflow, fast path, bug flow
6
6
 
7
7
  $ARGUMENTS
8
8
 
9
+ Codex UI command: `/prompts:task`. The `/task` name below describes the workflow; it is not a built-in Codex slash command.
10
+
9
11
  ## Purpose
10
12
 
11
13
  Use `/task` at the start of a task when you are unsure which workflow, skill, or specialist agent applies. This command routes the request before implementation.