oh-my-customcode 0.168.0 → 0.170.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 +2 -2
- package/dist/cli/index.js +1 -1
- package/dist/index.js +1 -1
- package/package.json +1 -1
- package/templates/.claude/hooks/hooks.json +1 -1
- package/templates/.claude/rules/MUST-agent-design.md +2 -0
- package/templates/.claude/rules/MUST-enforcement-policy.md +2 -0
- package/templates/.claude/skills/pipeline/labels.md +7 -0
- package/templates/.claude/skills/pipeline/workflows/auto-dev.yaml +2 -1
- package/templates/manifest.json +1 -1
- package/templates/workflows/auto-dev.yaml +2 -1
package/README.md
CHANGED
|
@@ -213,7 +213,7 @@ All commands are invoked inside the Claude Code conversation.
|
|
|
213
213
|
| Priority | Count | Purpose |
|
|
214
214
|
|----------|-------|---------|
|
|
215
215
|
| **MUST** | 14 | Safety, permissions, agent design, identification, orchestration, verification, completion, enforcement |
|
|
216
|
-
| **SHOULD** |
|
|
216
|
+
| **SHOULD** | 8 | Interaction, error handling, memory, HUD, ecomode, ontology routing, wiki sync, verification ladder |
|
|
217
217
|
| **MAY** | 1 | Optimization |
|
|
218
218
|
|
|
219
219
|
Key rules: R010 (orchestrator never writes files), R009 (parallel execution mandatory), R017 (sauron verification before push), R020 (completion verification before declaring done), R021 (advisory-first enforcement model).
|
|
@@ -271,7 +271,7 @@ your-project/
|
|
|
271
271
|
├── .claude/
|
|
272
272
|
│ ├── agents/ # 49 agent definitions
|
|
273
273
|
│ ├── skills/ # 116 skill modules
|
|
274
|
-
│ ├── rules/ #
|
|
274
|
+
│ ├── rules/ # 23 governance rules (R000-R023)
|
|
275
275
|
│ ├── hooks/ # 15 lifecycle hook scripts
|
|
276
276
|
│ ├── schemas/ # Tool input validation schemas
|
|
277
277
|
│ ├── specs/ # Extracted canonical specs
|
package/dist/cli/index.js
CHANGED
package/dist/index.js
CHANGED
package/package.json
CHANGED
|
@@ -90,7 +90,7 @@
|
|
|
90
90
|
"command": "bash .claude/hooks/scripts/rtk-intercept.sh"
|
|
91
91
|
}
|
|
92
92
|
],
|
|
93
|
-
"description": "RTK auto-intercept — transparently rewrites CLI commands through RTK proxy when available (
|
|
93
|
+
"description": "RTK auto-intercept — transparently rewrites CLI commands through RTK proxy when available (R013 advisory)"
|
|
94
94
|
},
|
|
95
95
|
{
|
|
96
96
|
"matcher": "tool == \"Bash\" && tool_input.command matches \"git (reset|clean|checkout|restore|switch|rebase|merge)\"",
|
|
@@ -356,6 +356,8 @@ description: Brief desc # One-line summary
|
|
|
356
356
|
|
|
357
357
|
Key optional fields: `scope`, `context`, `version`, `effort`, `model`, `agent`, `hooks`, `paths`, `shell`, `allowed-tools`, `keep-coding-instructions`. Skill `effort` takes precedence over agent `effort` when both specified. See full optional fields via Read tool.
|
|
358
358
|
|
|
359
|
+
> **v2.1.163+**: In skill `command` bodies, use `\$` to emit a literal `$` before a number (e.g., `\$1`) — previously ambiguous with shell variable expansion. Relevant when authoring skills with `shell:` or inline command steps that include dollar signs not intended as variables.
|
|
360
|
+
|
|
359
361
|
<!-- DETAIL: Skill Optional Fields (full yaml block)
|
|
360
362
|
```yaml
|
|
361
363
|
scope: core # core | harness | package (default: core)
|
|
@@ -17,6 +17,8 @@ oh-my-customcode uses an **advisory-first enforcement model**. Most rules are en
|
|
|
17
17
|
| Advisory (proactive) | UserPromptSubmit hook | R007, R008 (`r007-r008-drift-advisor.sh`, #1229) | Reads last assistant turn; emits stderr advisory before next response if header/prefix absent. Complements retroactive Stop-hook (`session-reflection.sh`, #1190). |
|
|
18
18
|
| Prompt-based | CLAUDE.md + rules/ + PostCompact | All MUST rules | Behavioral guidance in context |
|
|
19
19
|
|
|
20
|
+
> **v2.1.163+**: Stop and SubagentStop hooks can return `hookSpecificOutput.additionalContext` (JSON) to feed structured feedback back into Claude's context without triggering a hook error label. This enables advisory-style enforcement via Stop/SubagentStop hooks (e.g., `session-reflection.sh`, omcustom-loop SubagentStop) to pass richer context — replacing plain stderr text — without disrupting the turn continuation behavior that advisory-first enforcement relies on.
|
|
21
|
+
|
|
20
22
|
## Why Advisory-First
|
|
21
23
|
|
|
22
24
|
1. **Agent flexibility**: Hard blocks can trap agents in unrecoverable states
|
|
@@ -41,6 +41,13 @@ An issue is eligible for `docs-only` compression mode if its labels include at l
|
|
|
41
41
|
If ALL scoped issues are compression-eligible AND scope size ≤ 3, the pipeline MAY use
|
|
42
42
|
`compression_mode=docs-only` (skip professor-triage / release-plan / deep-plan / deep-verify skill spawns).
|
|
43
43
|
|
|
44
|
+
An issue is eligible for `lite` (Tier 2) compression mode if its labels include at least one of:
|
|
45
|
+
`documentation`, `automated`, `claude-code-release`, `feedback`, `professor`, `enhancement`, `improvement`
|
|
46
|
+
|
|
47
|
+
If ALL scoped issues carry at least one lite-eligible label AND scope size ≤ 7 AND no issue carries
|
|
48
|
+
`breaking-change` or `decision-needed`, the pipeline MAY use `compression_mode=lite`
|
|
49
|
+
(integrated analysis replaces heavy skill spawns for triage/plan/deep-plan/deep-verify; implement and verify-build execute normally).
|
|
50
|
+
|
|
44
51
|
## Lifecycle Labels (set by `implement` step)
|
|
45
52
|
|
|
46
53
|
| Transition | Action |
|
|
@@ -137,7 +137,7 @@ steps:
|
|
|
137
137
|
Evaluate ONLY if docs-only NOT met. Conditions (ALL must hold):
|
|
138
138
|
1. scope size ≤ 7
|
|
139
139
|
2. ALL scoped issues are low-risk: for EVERY issue,
|
|
140
|
-
labels ∩ {documentation, automated, claude-code-release, feedback, professor, enhancement} ≠ ∅
|
|
140
|
+
labels ∩ {documentation, automated, claude-code-release, feedback, professor, enhancement, improvement} ≠ ∅
|
|
141
141
|
3. NO scoped issue carries a breaking-change or decision-needed label
|
|
142
142
|
4. No code logic change is expected — work is docs/rule/skill/config/script-centric
|
|
143
143
|
(verify against each issue body; if any issue implies application code logic change, FAIL the lite check)
|
|
@@ -201,6 +201,7 @@ steps:
|
|
|
201
201
|
- Issues whose prerequisites failed in-run MUST be skipped (log reason)
|
|
202
202
|
- No direct orchestrator writes (R010)
|
|
203
203
|
- All Agent tool calls MUST pass mode: "bypassPermissions" to prevent permission prompts during unattended execution
|
|
204
|
+
- Mid-run scope additions (a new issue added via user interrupt AFTER implement began) MUST re-enter the verify-build gate before release — do NOT let a late-added scope item ride to release on a prior verify-build pass. Critical for code changes; benign for docs-only (#1301).
|
|
204
205
|
|
|
205
206
|
|
|
206
207
|
## Sensitive Path Handling (CC v2.1.121+)
|
package/templates/manifest.json
CHANGED
|
@@ -137,7 +137,7 @@ steps:
|
|
|
137
137
|
Evaluate ONLY if docs-only NOT met. Conditions (ALL must hold):
|
|
138
138
|
1. scope size ≤ 7
|
|
139
139
|
2. ALL scoped issues are low-risk: for EVERY issue,
|
|
140
|
-
labels ∩ {documentation, automated, claude-code-release, feedback, professor, enhancement} ≠ ∅
|
|
140
|
+
labels ∩ {documentation, automated, claude-code-release, feedback, professor, enhancement, improvement} ≠ ∅
|
|
141
141
|
3. NO scoped issue carries a breaking-change or decision-needed label
|
|
142
142
|
4. No code logic change is expected — work is docs/rule/skill/config/script-centric
|
|
143
143
|
(verify against each issue body; if any issue implies application code logic change, FAIL the lite check)
|
|
@@ -201,6 +201,7 @@ steps:
|
|
|
201
201
|
- Issues whose prerequisites failed in-run MUST be skipped (log reason)
|
|
202
202
|
- No direct orchestrator writes (R010)
|
|
203
203
|
- All Agent tool calls MUST pass mode: "bypassPermissions" to prevent permission prompts during unattended execution
|
|
204
|
+
- Mid-run scope additions (a new issue added via user interrupt AFTER implement began) MUST re-enter the verify-build gate before release — do NOT let a late-added scope item ride to release on a prior verify-build pass. Critical for code changes; benign for docs-only (#1301).
|
|
204
205
|
|
|
205
206
|
|
|
206
207
|
## Sensitive Path Handling (CC v2.1.121+)
|