procedure-cli 1.1.0 → 1.3.0

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.
package/README.md CHANGED
@@ -111,7 +111,47 @@ Three independent yes/no prompts — each explained before asking:
111
111
  - **Claude Powerline** — live status bar (git branch, context %, cost, active tools); runs via `npx` per session
112
112
  - **Git repository** — `git init` + initial commit with the generated files
113
113
  - **npm release scripts** — creates `~/bin/<project>-release` and adds `release:patch/minor/major` to `package.json`
114
- - **Code review skills** — installs `/b3awesome-code-review` and `/b3awesome-code-fix` slash commands for Claude Code, Codex CLI, and OpenCode; creates `CODE-REVIEW.md` and `CODE-FIXED.md` append-only log templates; places an archive script in `scripts/` for compacting resolved entries
114
+ - **Code review skills** — installs `/b3awesome-code-review`, `/b3awesome-code-fix`, and `/add-procedure-cli-rule` slash commands for Claude Code, Codex CLI, and OpenCode; creates `CODE-REVIEW.md` and `CODE-FIXED.md` append-only log templates; places an archive script in `scripts/` for compacting resolved entries
115
+
116
+ ## Utility Scripts
117
+
118
+ ### `procedure-cli-skills-copy.sh`
119
+
120
+ Standalone script to copy all AI agent skills to an existing project generated by Procedure CLI (useful if the project was created before the skill was available, or if Setup was skipped).
121
+
122
+ **What it does:**
123
+ - Copies `/add-procedure-cli-rule` skill to Claude Code, Codex CLI, and OpenCode
124
+ - Creates required directories if missing
125
+ - Skips existing files (safe — never overwrites)
126
+ - Provides clear feedback for each agent
127
+
128
+ **Setup:**
129
+ ```bash
130
+ # Copy script to home directory
131
+ cp /path/to/procedure-cli/procedure-cli-skills-copy.sh ~
132
+
133
+ # Add alias to ~/.zshrc (or ~/.bashrc)
134
+ echo "alias pcsc='bash ~/procedure-cli-skills-copy.sh'" >> ~/.zshrc
135
+ source ~/.zshrc
136
+ ```
137
+
138
+ **Usage:**
139
+ ```bash
140
+ cd /path/to/your-project
141
+ pcsc
142
+
143
+ # Or explicitly specify destination
144
+ ~/procedure-cli-skills-copy.sh /path/to/your-project
145
+ ```
146
+
147
+ **Output:**
148
+ ```
149
+ 📦 Copying add-procedure-cli-rule skill to .
150
+ ✅ Claude Code: .claude/skills/add-procedure-cli-rule/SKILL.md
151
+ ✅ Codex CLI: .codex/skills/add-procedure-cli-rule/SKILL.md
152
+ ✅ OpenCode: .opencode/commands/add-procedure-cli-rule.md
153
+ ✨ Done!
154
+ ```
115
155
 
116
156
  ## UI Components
117
157
 
@@ -8,6 +8,8 @@ import { ensureDir, resolveTemplatePath } from './fs.js';
8
8
  export function setupSkills(targetDir) {
9
9
  const reviewSkillSrc = resolveTemplatePath('skills/b3awesome-code-review/SKILL.md');
10
10
  const fixSkillSrc = resolveTemplatePath('skills/b3awesome-code-fix/SKILL.md');
11
+ const addRuleSkillSrc = resolveTemplatePath('skills/add-procedure-cli-rule/SKILL.md');
12
+ const addRuleOpencodeSrc = resolveTemplatePath('skills/add-procedure-cli-rule/opencode.md');
11
13
  const archiveScriptSrc = resolveTemplatePath('skills/scripts/archive-reviews.sh');
12
14
  const reviewTemplateSrc = resolveTemplatePath('skills/assets/CODE-REVIEW.template.md');
13
15
  const fixTemplateSrc = resolveTemplatePath('skills/assets/CODE-FIXED.template.md');
@@ -15,10 +17,13 @@ export function setupSkills(targetDir) {
15
17
  const skillDests = [
16
18
  { src: reviewSkillSrc, dest: resolve(targetDir, '.claude/skills/b3awesome-code-review/SKILL.md') },
17
19
  { src: fixSkillSrc, dest: resolve(targetDir, '.claude/skills/b3awesome-code-fix/SKILL.md') },
20
+ { src: addRuleSkillSrc, dest: resolve(targetDir, '.claude/skills/add-procedure-cli-rule/SKILL.md') },
18
21
  { src: reviewSkillSrc, dest: resolve(targetDir, '.codex/skills/b3awesome-code-review/SKILL.md') },
19
22
  { src: fixSkillSrc, dest: resolve(targetDir, '.codex/skills/b3awesome-code-fix/SKILL.md') },
23
+ { src: addRuleSkillSrc, dest: resolve(targetDir, '.codex/skills/add-procedure-cli-rule/SKILL.md') },
20
24
  { src: reviewSkillSrc, dest: resolve(targetDir, '.opencode/commands/b3awesome-code-review.md') },
21
25
  { src: fixSkillSrc, dest: resolve(targetDir, '.opencode/commands/b3awesome-code-fix.md') },
26
+ { src: addRuleOpencodeSrc, dest: resolve(targetDir, '.opencode/commands/add-procedure-cli-rule.md') },
22
27
  ];
23
28
  for (const { src, dest } of skillDests) {
24
29
  if (!existsSync(dest)) {
@@ -1 +1 @@
1
- {"version":3,"file":"skills.js","sourceRoot":"","sources":["../../src/lib/skills.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC9D,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAEzD;;;GAGG;AACH,MAAM,UAAU,WAAW,CAAC,SAAiB;IAC3C,MAAM,cAAc,GAAG,mBAAmB,CAAC,uCAAuC,CAAC,CAAC;IACpF,MAAM,WAAW,GAAG,mBAAmB,CAAC,oCAAoC,CAAC,CAAC;IAC9E,MAAM,gBAAgB,GAAG,mBAAmB,CAAC,mCAAmC,CAAC,CAAC;IAClF,MAAM,iBAAiB,GAAG,mBAAmB,CAAC,uCAAuC,CAAC,CAAC;IACvF,MAAM,cAAc,GAAG,mBAAmB,CAAC,sCAAsC,CAAC,CAAC;IAEnF,wFAAwF;IACxF,MAAM,UAAU,GAAG;QACjB,EAAE,GAAG,EAAE,cAAc,EAAE,IAAI,EAAE,OAAO,CAAC,SAAS,EAAE,+CAA+C,CAAC,EAAE;QAClG,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,CAAC,SAAS,EAAE,4CAA4C,CAAC,EAAE;QAC5F,EAAE,GAAG,EAAE,cAAc,EAAE,IAAI,EAAE,OAAO,CAAC,SAAS,EAAE,8CAA8C,CAAC,EAAE;QACjG,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,CAAC,SAAS,EAAE,2CAA2C,CAAC,EAAE;QAC3F,EAAE,GAAG,EAAE,cAAc,EAAE,IAAI,EAAE,OAAO,CAAC,SAAS,EAAE,6CAA6C,CAAC,EAAE;QAChG,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,CAAC,SAAS,EAAE,0CAA0C,CAAC,EAAE;KAC3F,CAAC;IAEF,KAAK,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,UAAU,EAAE,CAAC;QACvC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACtB,SAAS,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QACvB,CAAC;IACH,CAAC;IAED,6DAA6D;IAC7D,MAAM,UAAU,GAAG,OAAO,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC;IACxD,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC5B,SAAS,CAAC,iBAAiB,EAAE,UAAU,CAAC,CAAC;IAC3C,CAAC;IAED,MAAM,OAAO,GAAG,OAAO,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;IACpD,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QACzB,SAAS,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;IACrC,CAAC;IAED,mCAAmC;IACnC,MAAM,WAAW,GAAG,OAAO,CAAC,SAAS,EAAE,4BAA4B,CAAC,CAAC;IACrE,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QAC7B,SAAS,CAAC,gBAAgB,EAAE,WAAW,CAAC,CAAC;QACzC,SAAS,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;IAChC,CAAC;AACH,CAAC;AAED,SAAS,SAAS,CAAC,GAAW,EAAE,IAAY;IAC1C,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;IACzB,YAAY,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;AAC1B,CAAC"}
1
+ {"version":3,"file":"skills.js","sourceRoot":"","sources":["../../src/lib/skills.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "procedure-cli",
3
- "version": "1.1.0",
3
+ "version": "1.3.0",
4
4
  "description": "CLI-based AI Agent powered by AI SDK 6, Z.ai, and OpenAI",
5
5
  "type": "module",
6
6
  "files": [
@@ -16,6 +16,11 @@ This file provides tool-agnostic instructions for AI coding agents working on th
16
16
 
17
17
  Run typecheck before build. Run all checks before submitting a PR.
18
18
 
19
+ ## Documentation Lookup
20
+
21
+ - Always use Context7 MCP to fetch concise, up-to-date documentation for all libraries before implementation
22
+ - Do not rely on training data for API usage — verify with Context7 first
23
+
19
24
  ## Code Style
20
25
 
21
26
  - Language: {{language}}
@@ -15,6 +15,11 @@ See docs/PRD.md for product requirements and docs/USER-STORIES.md for user stori
15
15
  {{prCommand}} # Before creating a PR
16
16
  ```
17
17
 
18
+ ## Documentation Lookup
19
+
20
+ - Always use Context7 MCP to fetch concise, up-to-date documentation for all libraries before implementation
21
+ - Do not rely on training data for API usage — verify with Context7 first
22
+
18
23
  ## Code Style
19
24
 
20
25
  {{#each codeStyle}}
@@ -148,7 +153,7 @@ Two tracking files live at the project root. Both are append-only logs — never
148
153
 
149
154
  ### Setup Assets
150
155
  - Setup step can seed `CODE-REVIEW.md`, `CODE-FIXED.md`, and `scripts/archive-reviews.sh`.
151
- - Setup step can also install reusable skills: `/b3awesome-code-review` and `/b3awesome-code-fix`.
156
+ - Setup step can also install reusable skills: `/b3awesome-code-review`, `/b3awesome-code-fix`, and `/add-procedure-cli-rule`.
152
157
  - If these files are missing in a generated project, re-run setup or copy from `templates/skills/`.
153
158
 
154
159
  ### Procedure
@@ -0,0 +1,31 @@
1
+ ---
2
+ name: add-procedure-cli-rule
3
+ description: >
4
+ Add a new rule, policy, or guideline section to both CLAUDE.md and AGENTS.md at once.
5
+ Use when the user wants to propagate a new rule/policy to both doc files simultaneously.
6
+ Triggers on: "add this rule", "add to CLAUDE.md and AGENTS.md",
7
+ "/add-procedure-cli-rule", or any request to add a section/rule/policy to both doc files.
8
+ ---
9
+
10
+ ## Target Files
11
+
12
+ Always edit both files — no exceptions:
13
+
14
+ 1. `CLAUDE.md` — Claude Code instructions
15
+ 2. `AGENTS.md` — tool-agnostic agent instructions
16
+
17
+ ## Insertion Point
18
+
19
+ Insert the new section immediately before `## Code Style` in each file.
20
+
21
+ ## Steps
22
+
23
+ 1. Extract the section content from the user's prompt (markdown block or plain text).
24
+ 2. Edit both files — insert before `## Code Style`.
25
+ 3. Commit with message: `feat: add <section-name> to CLAUDE.md and AGENTS.md`
26
+ 4. Push to remote.
27
+
28
+ ## Format Rules
29
+
30
+ - The inserted block must be a proper `##` markdown section.
31
+ - Preserve exactly one blank line before and after the block.
@@ -0,0 +1,29 @@
1
+ # Add a rule/policy section to both CLAUDE.md and AGENTS.md
2
+
3
+ Add a new rule, policy, or guideline section to both doc files at once.
4
+
5
+ ## Target Files
6
+
7
+ Always edit both files — no exceptions:
8
+
9
+ 1. `CLAUDE.md` — Claude Code instructions
10
+ 2. `AGENTS.md` — tool-agnostic agent instructions
11
+
12
+ ## Insertion Point
13
+
14
+ Insert the new section immediately before `## Code Style` in each file.
15
+
16
+ ## Steps
17
+
18
+ 1. Extract the section content from the user's prompt (markdown block or plain text).
19
+ 2. READ CLAUDE.md
20
+ 3. READ AGENTS.md
21
+ 4. Edit both files — insert before `## Code Style`.
22
+ 5. RUN git add CLAUDE.md AGENTS.md
23
+ 6. RUN git commit -m "feat: add <section-name> to CLAUDE.md and AGENTS.md"
24
+ 7. RUN git push
25
+
26
+ ## Format Rules
27
+
28
+ - The inserted block must be a proper `##` markdown section.
29
+ - Preserve exactly one blank line before and after the block.