oh-my-customcode 0.167.0 → 0.169.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/dist/cli/index.js CHANGED
@@ -241,7 +241,7 @@ var init_package = __esm(() => {
241
241
  workspaces: [
242
242
  "packages/*"
243
243
  ],
244
- version: "0.167.0",
244
+ version: "0.169.0",
245
245
  description: "Batteries-included agent harness for Claude Code",
246
246
  type: "module",
247
247
  bin: {
package/dist/index.js CHANGED
@@ -2031,7 +2031,7 @@ var package_default = {
2031
2031
  workspaces: [
2032
2032
  "packages/*"
2033
2033
  ],
2034
- version: "0.167.0",
2034
+ version: "0.169.0",
2035
2035
  description: "Batteries-included agent harness for Claude Code",
2036
2036
  type: "module",
2037
2037
  bin: {
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "workspaces": [
4
4
  "packages/*"
5
5
  ],
6
- "version": "0.167.0",
6
+ "version": "0.169.0",
7
7
  "description": "Batteries-included agent harness for Claude Code",
8
8
  "type": "module",
9
9
  "bin": {
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: homework
3
- description: On session cleanup ("세션 정리") or /homework invocation, analyze the current and linked previous sessions, extract mistakes (찐빠), and report them via omcustom-feedback with a confirmation gate. Use when wrapping up a session or auditing recent work for harness gaps.
3
+ description: On explicit /homework invocation, analyze the current and linked previous sessions, extract mistakes (찐빠), and report them via omcustom-feedback with a confirmation gate. Auto-activation on session cleanup/session-end signals is OPT-IN (default OFF) — requires an explicit project/user directive. Use when explicitly auditing recent work for harness gaps.
4
4
  scope: harness
5
5
  user-invocable: true
6
6
  argument-hint: "[--dry-run] [--days <n>] [--severity <critical|high|medium|low>]"
@@ -25,13 +25,15 @@ This skill is the dedicated entry point for R011's "Session-End Retrospective Fe
25
25
 
26
26
  ## Trigger Detection
27
27
 
28
- Activate when the user says any of:
29
- - "세션 정리" / "숙제" / "회고"
30
- - "homework" / "session cleanup" / "wrap up"
31
- - Explicit `/homework` invocation
32
- - Session-end signals: "끝", "종료", "마무리", "done", "end session"
28
+ **Default: OFF for auto-activation.** This skill does NOT auto-run on session cleanup or session-end signals unless explicitly enabled. The default is `false` — silence is a non-trigger.
33
29
 
34
- When activated as a session-end signal, this skill runs BEFORE sys-memory-keeper's MEMORY.md update (R011 session-end self-check order: homework → memory save).
30
+ Activate ONLY when:
31
+ - **Explicit `/homework` invocation** (always runs)
32
+ - **Explicit opt-in**: the user/project has explicitly directed homework to run on session cleanup — e.g., a CLAUDE.md directive such as "run homework on every session cleanup", or a settings flag. A one-off explicit request ("회고 돌려줘", "homework 실행") also counts.
33
+
34
+ If no explicit opt-in exists, treat session-cleanup / session-end phrases ("세션 정리", "숙제", "회고", "끝", "종료", "마무리", "done", "wrap up", "session cleanup", "end session") as **NON-triggers** — do NOT auto-run. You MAY briefly remind the user that `/homework` is available, then proceed with normal session-end handling.
35
+
36
+ When auto-activation IS explicitly enabled and fires as a session-end signal, this skill runs BEFORE sys-memory-keeper's MEMORY.md update (R011 session-end self-check order: homework → memory save).
35
37
 
36
38
  ## Workflow
37
39
 
@@ -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+)
@@ -117,6 +117,8 @@ fi
117
117
 
118
118
  **Action**: `[Pre-flight] WARN: Context usage at {pct}%. 10-team research typically adds 30-40% context. Consider /compact before proceeding, or results may be truncated.`
119
119
 
120
+ > **File-absent branch (#1298)**: `$CONTEXT_FILE`가 존재하지 않으면 입력이 측정 불가하다 — `PASS (context budget unmeasured — file absent)`로 보고하고 WARN을 내지 않는다. 파일을 읽지 않고 WARN 상태를 특성화하지 않는다(R020 Read-Before-Characterize). WARN은 파일이 존재하고 context_pct > 40 일 때만 emit한다.
121
+
120
122
  ### Display Format
121
123
 
122
124
  ```
@@ -226,6 +228,10 @@ Reference: `feedback_sensitive_path_tmp_bypass.md`, R006 sensitive-path handling
226
228
  | Ecomode | Auto-activate for team result aggregation (R013) |
227
229
  | Intent display | Show research plan before execution (R015) |
228
230
 
231
+ ## External Quantitative-Fact Source Tagging
232
+
233
+ research 팀이 WebFetch로 구체적 정량 주장(benchmark 수치, table 값)을 수집하면, synthesis/report는 출처별로 태깅해야 한다: `WebFetch-derived (unverified)` vs `PDF/primary-verified`. WebFetch는 small fast model + URL당 15분 캐시를 사용하므로, N개 팀이 동일 URL을 fetch하는 것은 독립 교차검증이 아니다(팀 간 합의가 공유 캐시 artifact일 수 있음). primary source에서 검증 불가한 cross-cutting fact는 verifier에게 명시적 ground-truth로 제공해야 한다(R023). 영구 이슈/아티팩트에 정확한 수치를 primary-source 검증 또는 명시적 unverified 태그 없이 사실로 기재하지 않는다.
234
+
229
235
  ## Retrieval-Reasoning Separation
230
236
 
231
237
  Retrieval and reasoning are distinct cognitive operations that benefit from explicit role separation. Mixing them in a single agent degrades both: retrieval becomes biased by premature conclusions, and reasoning gets polluted by search noise.
@@ -91,6 +91,8 @@ Before execution, show the plan:
91
91
  - Approach and principles
92
92
  3. If fetch fails — report error, abort
93
93
 
94
+ > **External quantitative-fact source tagging** (#1298): WebFetch가 산출한 구체적 정량 주장(benchmark 수치, table 값, metric)은 이슈 본문에 `WebFetch-derived (unverified)`로 태깅한다 — 검증된 사실로 제시하지 않는다. WebFetch는 small fast model + 15분 URL 캐시를 사용하므로, 동일 URL을 여러 번 fetch해도 독립 교차검증이 아니다. load-bearing 수치는 primary PDF/원문으로 1회 검증하거나 명시적으로 unverified로 표기한다. (R020 Read-Before-Characterize, R023 Verifier Ground-Truth for cross-cutting facts)
95
+
94
96
  ### Phase 2: Load Project Philosophy
95
97
 
96
98
  1. `Read(CLAUDE.md)` — extract architecture philosophy:
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "0.167.0",
2
+ "version": "0.169.0",
3
3
  "lastUpdated": "2026-05-20T00:00:00.000Z",
4
4
  "omcustomMinClaudeCode": "2.1.121",
5
5
  "omcustomMinClaudeCodeReason": "Sensitive-path direct Write/Edit on .claude/** under bypassPermissions (R010 deprecation, #1101)",
@@ -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+)