oh-my-customcodex 0.4.4 → 0.4.5
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 +1 -1
- package/dist/index.js +1 -1
- package/package.json +1 -1
- package/templates/.claude/rules/MUST-agent-design.md +6 -0
- package/templates/.claude/skills/agora/SKILL.md +4 -0
- package/templates/.claude/skills/dag-orchestration/SKILL.md +31 -3
- package/templates/.claude/skills/de-lead-routing/SKILL.md +4 -0
- package/templates/.claude/skills/deep-plan/SKILL.md +28 -9
- package/templates/.claude/skills/deep-verify/SKILL.md +1 -0
- package/templates/.claude/skills/dev-lead-routing/SKILL.md +6 -0
- package/templates/.claude/skills/hada-scout/SKILL.md +104 -48
- package/templates/.claude/skills/harness-eval/SKILL.md +4 -0
- package/templates/.claude/skills/omcodex-improve-report/SKILL.md +4 -0
- package/templates/.claude/skills/omcodex-takeover/SKILL.md +4 -0
- package/templates/.claude/skills/optimize-analyze/SKILL.md +4 -0
- package/templates/.claude/skills/optimize-report/SKILL.md +4 -0
- package/templates/.claude/skills/professor-triage/SKILL.md +86 -84
- package/templates/.claude/skills/qa-lead-routing/SKILL.md +4 -0
- package/templates/.claude/skills/research/SKILL.md +1 -0
- package/templates/.claude/skills/roundtable-debate/SKILL.md +4 -0
- package/templates/.claude/skills/scout/SKILL.md +37 -32
- package/templates/.claude/skills/secretary-routing/SKILL.md +7 -1
- package/templates/.claude/skills/task-decomposition/SKILL.md +45 -1
- package/templates/.claude/skills/worker-reviewer-pipeline/SKILL.md +4 -0
- package/templates/manifest.json +1 -1
- package/templates/workflows/auto-dev.yaml +1 -0
package/dist/cli/index.js
CHANGED
package/dist/index.js
CHANGED
package/package.json
CHANGED
|
@@ -256,6 +256,12 @@ Recommended practice:
|
|
|
256
256
|
4. In this Codex port, update `.codex/...` source files and their `templates/.claude/...` mirrors deliberately instead of bulk-copying with shell commands.
|
|
257
257
|
5. For unattended Claude compatibility-template writes, use a reviewed temporary script wrapper and verify the resulting diff; direct Bash/Write/Edit targets under `templates/.claude/**` can all trigger the sensitive-path guard.
|
|
258
258
|
|
|
259
|
+
Delegation prompt requirement:
|
|
260
|
+
|
|
261
|
+
Any prompt that delegates work involving `.claude/**`, `templates/.claude/**`, `.claude/outputs/**`, or read-only measurement of those paths MUST include this block verbatim:
|
|
262
|
+
|
|
263
|
+
> Sensitive-path artifact protocol (mandatory): do not ask a subagent to call Read, Bash, Write, or Edit directly on `.claude/**` or `templates/.claude/**` paths. If Claude compatibility artifacts are required, have the subagent produce the artifact body in `/tmp/{skill}-{timestamp}.md`, then use a reviewed temporary script wrapper or managed file-write API for the final checked-in path. Do not use direct Write/Edit/Bash targets under `.claude/**` in unattended flows.
|
|
264
|
+
|
|
259
265
|
## Separation of Concerns
|
|
260
266
|
|
|
261
267
|
| Location | Purpose | Contains |
|
|
@@ -23,6 +23,10 @@ source:
|
|
|
23
23
|
- `gemini-exec` skill (Gemini 호출)
|
|
24
24
|
- Agent Teams enabled (`OMCODEX_AGENT_TEAMS=1`) or Agent tool available
|
|
25
25
|
|
|
26
|
+
## Sensitive-Path Delegation
|
|
27
|
+
|
|
28
|
+
Sensitive-path artifact protocol (mandatory): if this skill delegates work that touches `.claude/**`, `.claude/outputs/**`, `templates/.claude/**`, or read-only measurements of those paths, include this protocol directly in the delegated prompt. The delegate must produce artifact bodies in `/tmp/{skill}-{timestamp}.md` first and must avoid direct Read, Bash, Write, or Edit targets under `.claude/**` in unattended flows.
|
|
29
|
+
|
|
26
30
|
## Usage
|
|
27
31
|
|
|
28
32
|
```
|
|
@@ -57,7 +57,7 @@ nodes:
|
|
|
57
57
|
depends_on: [test, review, docs]
|
|
58
58
|
|
|
59
59
|
config:
|
|
60
|
-
max_parallel: 4 # R009
|
|
60
|
+
max_parallel: 4 # R009 soft default (hard cap: 5)
|
|
61
61
|
failure_strategy: stop # stop | skip | retry
|
|
62
62
|
retry_count: 2 # Max retries per node (if strategy=retry)
|
|
63
63
|
timeout_per_node: 300 # Seconds per node (0 = no limit)
|
|
@@ -76,19 +76,28 @@ config:
|
|
|
76
76
|
c. On completion:
|
|
77
77
|
- Success → decrement in-degree of dependents
|
|
78
78
|
- Failure → apply failure_strategy
|
|
79
|
-
d.
|
|
79
|
+
d. Stall check:
|
|
80
|
+
- If running node duration > 2x average completed duration
|
|
81
|
+
- AND pending nodes exist with in-degree = 0 (ignoring stalled node's edges)
|
|
82
|
+
- THEN enqueue those independent nodes immediately (adaptive split)
|
|
83
|
+
e. Enqueue newly-ready nodes (in-degree = 0)
|
|
80
84
|
6. Verify all nodes executed (detect unreachable nodes)
|
|
81
85
|
```
|
|
82
86
|
|
|
87
|
+
## Sensitive-Path Delegation
|
|
88
|
+
|
|
89
|
+
Sensitive-path artifact protocol (mandatory): if this skill delegates work that touches `.claude/**`, `.claude/outputs/**`, `templates/.claude/**`, or read-only measurements of those paths, include this protocol directly in the delegated prompt. The delegate must produce artifact bodies in `/tmp/{skill}-{timestamp}.md` first and must avoid direct Read, Bash, Write, or Edit targets under `.claude/**` in unattended flows.
|
|
90
|
+
|
|
83
91
|
## Execution Rules
|
|
84
92
|
|
|
85
93
|
| Rule | Detail |
|
|
86
94
|
|------|--------|
|
|
87
|
-
| Max parallel |
|
|
95
|
+
| Max parallel | 5 concurrent nodes max, 4 default (R009) |
|
|
88
96
|
| Agent Teams gate | 3+ parallel nodes → check R018 eligibility |
|
|
89
97
|
| Orchestrator only | DAG scheduling runs in main conversation (R010) |
|
|
90
98
|
| Node execution | Each node = one Task tool call to specified agent |
|
|
91
99
|
| State tracking | `/tmp/.codex-dag-$PPID.json` |
|
|
100
|
+
| Stall detection | Running node > 2x avg completed duration → enqueue independent pending nodes early |
|
|
92
101
|
|
|
93
102
|
## Failure Strategies
|
|
94
103
|
|
|
@@ -219,3 +228,22 @@ See `.codex/agents/tracker-checkpoint.md` for the agent contract.
|
|
|
219
228
|
- Max 20 nodes per workflow (complexity guard)
|
|
220
229
|
- Nested DAGs not supported (flatten instead)
|
|
221
230
|
- Cross-workflow dependencies not supported
|
|
231
|
+
|
|
232
|
+
## External References
|
|
233
|
+
|
|
234
|
+
### Multica — Managed Agent Platform
|
|
235
|
+
|
|
236
|
+
> Reference: [Multica](https://github.com/multica-ai/multica) — managed agent platform for Claude Code/Codex.
|
|
237
|
+
> Verdict: INTEGRATE (external reference, not internalize)
|
|
238
|
+
|
|
239
|
+
Multica's task lifecycle pattern (enqueue → claim → start → complete/fail) is a useful reference for DAG node state management:
|
|
240
|
+
|
|
241
|
+
| Multica State | DAG Equivalent | Notes |
|
|
242
|
+
|---------------|---------------|-------|
|
|
243
|
+
| enqueue | pending | Node waiting for dependencies |
|
|
244
|
+
| claim | ready | Dependencies resolved, ready to execute |
|
|
245
|
+
| start | running | Agent spawned and executing |
|
|
246
|
+
| complete | completed | Node finished successfully |
|
|
247
|
+
| fail | failed | Node execution failed |
|
|
248
|
+
|
|
249
|
+
Consider this pattern when extending DAG node state tracking or implementing retry logic.
|
|
@@ -219,6 +219,10 @@ Delegate to mgr-creator with context:
|
|
|
219
219
|
- Unfamiliar data formats or connectors
|
|
220
220
|
- Data tool detected in project but no specialist agent
|
|
221
221
|
|
|
222
|
+
## Sensitive-Path Delegation
|
|
223
|
+
|
|
224
|
+
Sensitive-path artifact protocol (mandatory): if this skill delegates work that touches `.claude/**`, `.claude/outputs/**`, `templates/.claude/**`, or read-only measurements of those paths, include this protocol directly in the delegated prompt. The delegate must produce artifact bodies in `/tmp/{skill}-{timestamp}.md` first and must avoid direct Read, Bash, Write, or Edit targets under `.claude/**` in unattended flows.
|
|
225
|
+
|
|
222
226
|
## Usage
|
|
223
227
|
|
|
224
228
|
This skill is NOT user-invocable. It should be automatically triggered when the main conversation detects data engineering intent.
|
|
@@ -82,22 +82,39 @@ Phase 2: Reality-Check Planning
|
|
|
82
82
|
- Each ADOPT item: Does it already exist? Partially implemented?
|
|
83
83
|
- Each ADAPT item: What is the current state to adapt from?
|
|
84
84
|
- Each AVOID item: Are the alternatives already available?
|
|
85
|
-
3. **
|
|
85
|
+
3. **Deliverable Dependency Verification**: After exploration, verify inter-deliverable dependencies:
|
|
86
|
+
- For each deliverable pair, check: do they share files, functions, or modules?
|
|
87
|
+
- Classify each pair: `independent` (parallel-safe), `sequential` (order required), `shared-state` (synchronization needed)
|
|
88
|
+
- **Default bias**: Assume `independent` unless exploration finds concrete shared state
|
|
89
|
+
- Build dependency matrix:
|
|
86
90
|
|
|
87
91
|
```
|
|
88
|
-
|
|
|
89
|
-
|
|
90
|
-
|
|
|
91
|
-
|
|
|
92
|
-
| "Migrate to v3" | Already on v3.1 | Overestimate | Remove from plan |
|
|
93
|
-
| "Add rate limiting" | Basic limiter exists | Partial gap | Adapt existing |
|
|
92
|
+
| Deliverable A | Deliverable B | Classification | Evidence |
|
|
93
|
+
|---------------|---------------|----------------|----------|
|
|
94
|
+
| D1: Auth | D2: API | independent | No shared files |
|
|
95
|
+
| D1: Auth | D3: Tests | sequential | D3 tests D1 output |
|
|
94
96
|
```
|
|
95
97
|
|
|
96
|
-
|
|
98
|
+
- **Orchestrator override**: The dependency classification is advisory. The orchestrator or user can reclassify pairs when the automated analysis is overly conservative.
|
|
99
|
+
|
|
100
|
+
4. **Gap Analysis**: Build a reconciliation table:
|
|
101
|
+
|
|
102
|
+
```
|
|
103
|
+
| Research Finding | Actual Code State | Gap Type | Action | Dependencies |
|
|
104
|
+
|-----------------|-------------------|----------|--------|-------------|
|
|
105
|
+
| "No caching" | Redis client exists | Overestimate | Remove from plan | — |
|
|
106
|
+
| "Need auth middleware" | No auth layer | Real gap | Keep in plan | D3 (sequential) |
|
|
107
|
+
| "Migrate to v3" | Already on v3.1 | Overestimate | Remove from plan | — |
|
|
108
|
+
| "Add rate limiting" | Basic limiter exists | Partial gap | Adapt existing | independent |
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
5. **Refined Plan**: Write implementation plan containing ONLY real gaps:
|
|
97
112
|
- Remove overestimates (already implemented)
|
|
98
113
|
- Adjust partial gaps (adapt, don't rebuild)
|
|
99
114
|
- Prioritize real gaps by impact
|
|
100
|
-
|
|
115
|
+
6. **User Approval**: `ExitPlanMode` presents the refined plan for user review
|
|
116
|
+
- Include dependency matrix in plan output
|
|
117
|
+
- Display override option: "Dependency classifications are advisory. Reply with reclassifications if needed."
|
|
101
118
|
|
|
102
119
|
### Phase 3: Plan Verification Research
|
|
103
120
|
|
|
@@ -332,6 +349,8 @@ Phase 3 verification report is persisted by the final synthesis agent:
|
|
|
332
349
|
.codex/outputs/sessions/{YYYY-MM-DD}/deep-plan-{HHmmss}.md
|
|
333
350
|
```
|
|
334
351
|
|
|
352
|
+
Sensitive-path artifact protocol (mandatory): if any research, planning, or verification delegate must touch `.claude/**`, `.claude/outputs/**`, or `templates/.claude/**`, include the protocol directly in that delegate prompt. The delegate must write artifact bodies to `/tmp/deep-plan-{timestamp}.md` first and must avoid direct Read, Bash, Write, or Edit targets under `.claude/**` in unattended flows.
|
|
353
|
+
|
|
335
354
|
With metadata header:
|
|
336
355
|
```markdown
|
|
337
356
|
---
|
|
@@ -73,6 +73,7 @@ Each agent receives the full diff and returns findings as structured JSON:
|
|
|
73
73
|
- Verify all changes align with project's compilation metaphor (Skills=source, Agents=artifacts, Rules=spec)
|
|
74
74
|
- Check separation of concerns: no agents containing skill logic, no skills with agent definitions
|
|
75
75
|
- Verify orchestrator rules: no new file writes from orchestrator context
|
|
76
|
+
- Verify sensitive-path delegation: prompts that touch `.claude/**`, `.claude/outputs/**`, or `templates/.claude/**` include the exact phrase `Sensitive-path artifact protocol (mandatory)`, require an explicit `/tmp/{skill}-{timestamp}.md` artifact body path, mention `Read, Bash, Write, or Edit` coverage, and do not rely on a single vague `/tmp` recommendation
|
|
76
77
|
- Check advisory-first: no new hard-blocking hooks introduced
|
|
77
78
|
- Confirm no feature regressions: existing APIs preserved, test coverage maintained
|
|
78
79
|
- Performance sanity: no O(n^2) on large datasets, no missing indexes for new queries
|
|
@@ -8,6 +8,10 @@ context: fork
|
|
|
8
8
|
|
|
9
9
|
# Dev Lead Routing
|
|
10
10
|
|
|
11
|
+
## Sensitive-Path Delegation
|
|
12
|
+
|
|
13
|
+
Sensitive-path artifact protocol (mandatory): if this skill delegates work that touches `.claude/**`, `.claude/outputs/**`, `templates/.claude/**`, or read-only measurements of those paths, include this protocol directly in the delegated prompt. The delegate must produce artifact bodies in `/tmp/{skill}-{timestamp}.md` first and must avoid direct Read, Bash, Write, or Edit targets under `.claude/**` in unattended flows.
|
|
14
|
+
|
|
11
15
|
## Engineers
|
|
12
16
|
|
|
13
17
|
| Type | Agents |
|
|
@@ -20,6 +24,7 @@ context: fork
|
|
|
20
24
|
| Architect | arch-documenter, arch-speckit-agent |
|
|
21
25
|
| Security | sec-codeql-expert |
|
|
22
26
|
| Infra | infra-docker-expert, infra-aws-expert |
|
|
27
|
+
| Slack | slack-cli-expert |
|
|
23
28
|
|
|
24
29
|
## File Extension Mapping
|
|
25
30
|
|
|
@@ -74,6 +79,7 @@ context: fork
|
|
|
74
79
|
| security, codeql, cve, vulnerability, sarif, sast, security audit | sec-codeql-expert |
|
|
75
80
|
| architecture, adr, openapi, swagger, diagram | arch-documenter |
|
|
76
81
|
| spec, specification, tdd, requirements | arch-speckit-agent |
|
|
82
|
+
| slack, slack-cli, slack app, slack deploy, slack trigger, slack datastore | slack-cli-expert |
|
|
77
83
|
|
|
78
84
|
## Model Selection
|
|
79
85
|
|
|
@@ -1,92 +1,148 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: hada-scout
|
|
3
|
-
description: hada.io RSS feed monitoring
|
|
4
|
-
scope:
|
|
5
|
-
version:
|
|
6
|
-
user-invocable:
|
|
3
|
+
description: hada.io RSS feed monitoring with LLM pre-scout filtering for oh-my-customcodex relevance
|
|
4
|
+
scope: core
|
|
5
|
+
version: 2.0.0
|
|
6
|
+
user-invocable: true
|
|
7
|
+
argument-hint: "[--limit N] [--threshold N]"
|
|
7
8
|
---
|
|
8
9
|
|
|
9
10
|
# hada-scout
|
|
10
11
|
|
|
11
|
-
|
|
12
|
+
3-phase in-session pipeline that monitors hada.io (via feedburner RSS) for relevant articles,
|
|
13
|
+
uses a haiku LLM batch to pre-score relevance, and dispatches full `/scout` analysis only on
|
|
14
|
+
high-scoring candidates.
|
|
15
|
+
|
|
16
|
+
## Sensitive-Path Delegation
|
|
17
|
+
|
|
18
|
+
Sensitive-path artifact protocol (mandatory): if this skill delegates work that touches `.claude/**`, `.claude/outputs/**`, `templates/.claude/**`, or read-only measurements of those paths, include this protocol directly in the delegated prompt. The delegate must produce artifact bodies in `/tmp/{skill}-{timestamp}.md` first and must avoid direct Read, Bash, Write, or Edit targets under `.claude/**` in unattended flows.
|
|
12
19
|
|
|
13
20
|
## Purpose
|
|
14
21
|
|
|
15
|
-
|
|
22
|
+
Replace the v1.0 keyword-regex approach with context-aware LLM pre-scoring. Haiku evaluates
|
|
23
|
+
all feed titles in a single batch call, reducing false positives from ~30-40% to ~5-10% and
|
|
24
|
+
eliminating the external CronJob dependency for user-invoked runs.
|
|
25
|
+
|
|
26
|
+
## Architecture: 3-Phase In-Session Pipeline
|
|
16
27
|
|
|
17
|
-
|
|
28
|
+
### Phase 1 — Fetch & Parse
|
|
18
29
|
|
|
19
|
-
|
|
30
|
+
1. WebFetch the hada.io RSS feed (`https://feeds.feedburner.com/geeknews-feed`)
|
|
31
|
+
2. Parse all items: title, URL, publication date
|
|
32
|
+
3. Default: latest 50 items (configurable via `--limit` or `HADA_SCOUT_LIMIT`)
|
|
20
33
|
|
|
21
|
-
|
|
22
|
-
2. Filter entries by keyword regex (case-insensitive)
|
|
23
|
-
3. Dedup against existing `hada-scout` issues
|
|
24
|
-
4. Create GitHub issue per match with labels `hada-scout` + `pending-scout`
|
|
34
|
+
### Phase 2 — Pre-Scout (haiku batch)
|
|
25
35
|
|
|
26
|
-
|
|
36
|
+
1. Spawn 1 haiku agent with ALL item titles as a single batch input
|
|
37
|
+
2. Agent evaluates each title against oh-my-customcodex's domain (see prompt template below)
|
|
38
|
+
3. Returns relevance score (0–100) and a 1-line reason for each item
|
|
39
|
+
4. Threshold: ≥ 60 passes to Phase 3 (configurable via `--threshold` or `HADA_SCOUT_THRESHOLD`)
|
|
40
|
+
5. Cost: ~$0.01–0.05 for 50 items
|
|
27
41
|
|
|
28
|
-
|
|
29
|
-
2. Extract source URL from issue body
|
|
30
|
-
3. Run `claude -p "/scout {url}"` (max 5 executions per run)
|
|
31
|
-
4. Parse verdict from /scout output
|
|
32
|
-
5. Apply verdict label, remove `pending-scout`
|
|
42
|
+
### Phase 3 — Scout Dispatch
|
|
33
43
|
|
|
34
|
-
|
|
44
|
+
1. Dedup: check existing `hada-scout` labeled issues via `gh issue list --label hada-scout`
|
|
45
|
+
2. For each passing item (max 5 per run, configurable via `MAX_SCOUT_PER_RUN`):
|
|
46
|
+
- Run full `/scout` analysis via Skill tool invocation
|
|
47
|
+
- Scout creates GitHub issue with verdict label on `baekenough/oh-my-customcodex`
|
|
48
|
+
- Add `hada-scout` label to the created issue
|
|
49
|
+
3. Dispatch up to 4 scouts in parallel per R009
|
|
35
50
|
|
|
36
|
-
|
|
51
|
+
## Pre-Scout Prompt Template
|
|
52
|
+
|
|
53
|
+
The haiku agent receives the following system prompt:
|
|
37
54
|
|
|
38
55
|
```
|
|
39
|
-
|
|
56
|
+
You are a relevance filter for the oh-my-customcodex project — an AI agent harness/orchestration
|
|
57
|
+
system built on GPT Codex + OMX with 44 agents, 74 skills.
|
|
58
|
+
|
|
59
|
+
Project domains (HIGH relevance):
|
|
60
|
+
- AI agent orchestration, multi-agent systems, agent design patterns
|
|
61
|
+
- Harness, benchmark, evaluation frameworks for AI agents
|
|
62
|
+
- GPT Codex, OMX, MCP protocol
|
|
63
|
+
- Code review automation, development workflow automation
|
|
64
|
+
- Agent sandbox, isolation, security patterns
|
|
65
|
+
- LLM-assisted development tools and methodologies
|
|
66
|
+
|
|
67
|
+
Project domains (MEDIUM relevance):
|
|
68
|
+
- General AI/ML tooling that could be adapted for agent workflows
|
|
69
|
+
- DevOps automation patterns applicable to agent infrastructure
|
|
70
|
+
- New programming paradigms for AI-assisted development
|
|
71
|
+
|
|
72
|
+
NOT relevant:
|
|
73
|
+
- Pure frontend/UI frameworks without agent connection
|
|
74
|
+
- Business/management topics
|
|
75
|
+
- Hardware, networking, non-AI infrastructure
|
|
76
|
+
- Social media, marketing tools
|
|
77
|
+
|
|
78
|
+
For each item below, return: score (0-100) | reason (1 line)
|
|
79
|
+
|
|
80
|
+
Items:
|
|
81
|
+
{numbered_item_list}
|
|
40
82
|
```
|
|
41
83
|
|
|
42
|
-
|
|
84
|
+
## Display Format
|
|
85
|
+
|
|
86
|
+
```
|
|
87
|
+
[hada-scout] Scanning hada.io feed...
|
|
88
|
+
├── Phase 1: Fetched {n} items
|
|
89
|
+
├── Phase 2: Pre-scout → {passed}/{total} items passed (threshold: {t}%)
|
|
90
|
+
│ ├── ✓ {title1} (score: {s1}%)
|
|
91
|
+
│ ├── ✓ {title2} (score: {s2}%)
|
|
92
|
+
│ └── ✗ {title3} (score: {s3}%) — skipped
|
|
93
|
+
├── Phase 3: Scout dispatch ({n} items, max 5)
|
|
94
|
+
│ ├── [1] /scout {url1} → {verdict}
|
|
95
|
+
│ └── [2] /scout {url2} → {verdict}
|
|
96
|
+
└── [Done] {created}/{dispatched} issues created
|
|
97
|
+
```
|
|
43
98
|
|
|
44
99
|
## Label Scheme
|
|
45
100
|
|
|
46
101
|
| Label | Purpose |
|
|
47
102
|
|-------|---------|
|
|
48
103
|
| `hada-scout` | Source identification — all hada-scout created issues |
|
|
49
|
-
| `pending-scout` | Awaiting /scout analysis (set by Layer 1, cleared by Layer 2) |
|
|
50
104
|
| `scout:internalize` | /scout verdict: adopt into project |
|
|
51
105
|
| `scout:integrate` | /scout verdict: use as external dependency |
|
|
52
106
|
| `scout:skip` | /scout verdict: not relevant |
|
|
53
107
|
|
|
54
108
|
## Cost Controls
|
|
55
109
|
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
- Pattern: same K8s CronJob structure as `infra/geeknews-scout/`
|
|
63
|
-
- Host: `ubuntu-ext` cluster
|
|
64
|
-
- Infrastructure files: `infra/hada-scout/`
|
|
65
|
-
- `check-feed.sh` — Layer 1 feed poller
|
|
66
|
-
- `scout-runner.sh` — Layer 2 /scout executor
|
|
67
|
-
- `Dockerfile`
|
|
68
|
-
- `cronjob.template.yaml`
|
|
69
|
-
- `deploy.sh`
|
|
70
|
-
- `.env.example`
|
|
110
|
+
| Stage | Model | Estimated Cost |
|
|
111
|
+
|-------|-------|----------------|
|
|
112
|
+
| Pre-scout (Phase 2) | haiku | ~$0.01–0.05 per run (50 items) |
|
|
113
|
+
| Full scout (Phase 3) | sonnet | ~$0.5–1.5 per item, max 5 per run |
|
|
114
|
+
| Total max per invocation | — | ~$8 |
|
|
71
115
|
|
|
72
116
|
## Environment Variables
|
|
73
117
|
|
|
74
118
|
| Variable | Default | Description |
|
|
75
119
|
|----------|---------|-------------|
|
|
76
|
-
| `
|
|
77
|
-
| `
|
|
78
|
-
| `
|
|
79
|
-
| `
|
|
80
|
-
| `
|
|
120
|
+
| `FEED_URL` | `https://feeds.feedburner.com/geeknews-feed` | RSS feed URL |
|
|
121
|
+
| `HADA_SCOUT_THRESHOLD` | `60` | Pre-scout score threshold (0–100) |
|
|
122
|
+
| `HADA_SCOUT_LIMIT` | `50` | Max feed items to fetch and score |
|
|
123
|
+
| `MAX_SCOUT_PER_RUN` | `5` | Max /scout executions per invocation |
|
|
124
|
+
| `GH_TOKEN` | (required) | GitHub PAT for issue creation and dedup |
|
|
81
125
|
|
|
82
126
|
## Integration
|
|
83
127
|
|
|
84
128
|
| Rule | How |
|
|
85
129
|
|------|-----|
|
|
86
|
-
| R009 |
|
|
87
|
-
| R010 |
|
|
88
|
-
|
|
|
89
|
-
|
|
90
|
-
|
|
130
|
+
| R009 | Phase 3 scout dispatches run in parallel (up to 4 concurrent) |
|
|
131
|
+
| R010 | Orchestrator manages phases; analysis delegated to haiku/sonnet agents |
|
|
132
|
+
| R015 | Pre-scout scores and reasons displayed before dispatching full scouts |
|
|
133
|
+
| scout skill | Phase 3 invokes `/scout` via Skill tool for each candidate URL |
|
|
134
|
+
|
|
135
|
+
## Differences from v1.0
|
|
136
|
+
|
|
137
|
+
| Aspect | v1.0 (keyword) | v2.0 (LLM pre-scout) |
|
|
138
|
+
|--------|----------------|----------------------|
|
|
139
|
+
| Filtering | Regex keyword match | LLM relevance scoring (haiku) |
|
|
140
|
+
| Invocation | External CronJob only | User-invocable `/hada-scout` + CronJob |
|
|
141
|
+
| Precision | Low (keyword false positives) | High (context-aware scoring) |
|
|
142
|
+
| Cost per scan | $0 (regex) + $2.5–7.5 (/scout) | $0.05 (pre-scout) + $2.5–7.5 (/scout) |
|
|
143
|
+
| False positive rate | ~30–40% | ~5–10% |
|
|
144
|
+
| Scope | `package` | `core` |
|
|
145
|
+
|
|
146
|
+
## Tracking
|
|
91
147
|
|
|
92
148
|
GitHub Issue #841
|
|
@@ -14,6 +14,10 @@ version: 1.0.0
|
|
|
14
14
|
|
|
15
15
|
Evaluate agent quality using 15 structured software engineering task definitions with quantitative scoring. Based on research from [revfactory/claude-code-harness](https://github.com/revfactory/claude-code-harness) which demonstrated 60% improvement (49.5 → 79.3 points) through structured pre-configuration.
|
|
16
16
|
|
|
17
|
+
## Sensitive-Path Delegation
|
|
18
|
+
|
|
19
|
+
Sensitive-path artifact protocol (mandatory): if this skill delegates work that touches `.claude/**`, `.claude/outputs/**`, `templates/.claude/**`, or read-only measurements of those paths, include this protocol directly in the delegated prompt. The delegate must produce artifact bodies in `/tmp/{skill}-{timestamp}.md` first and must avoid direct Read, Bash, Write, or Edit targets under `.claude/**` in unattended flows.
|
|
20
|
+
|
|
17
21
|
## Usage
|
|
18
22
|
|
|
19
23
|
```
|
|
@@ -13,6 +13,10 @@ Display improvement suggestions from eval-core analysis engine as read-only repo
|
|
|
13
13
|
|
|
14
14
|
Surface actionable improvement suggestions gathered by the eval-core analysis engine. Reads from eval-core's local database and renders insights as structured markdown. Useful for understanding routing quality, skill effectiveness, and agent usage patterns.
|
|
15
15
|
|
|
16
|
+
## Sensitive-Path Delegation
|
|
17
|
+
|
|
18
|
+
Sensitive-path artifact protocol (mandatory): if this skill delegates work that touches `.claude/**`, `.claude/outputs/**`, `templates/.claude/**`, or read-only measurements of those paths, include this protocol directly in the delegated prompt. The delegate must produce artifact bodies in `/tmp/{skill}-{timestamp}.md` first and must avoid direct Read, Bash, Write, or Edit targets under `.claude/**` in unattended flows.
|
|
19
|
+
|
|
16
20
|
## Usage
|
|
17
21
|
|
|
18
22
|
```
|
|
@@ -14,6 +14,10 @@ Extract a canonical specification from an existing agent or skill file. Inspired
|
|
|
14
14
|
|
|
15
15
|
When an agent or skill has evolved organically without a formal spec, `omcodex:takeover` reverse-engineers a structured specification that captures its intent, invariants, workflow contract, and I/O contract.
|
|
16
16
|
|
|
17
|
+
## Sensitive-Path Delegation
|
|
18
|
+
|
|
19
|
+
Sensitive-path artifact protocol (mandatory): if this skill delegates work that touches `.claude/**`, `.claude/outputs/**`, `templates/.claude/**`, or read-only measurements of those paths, include this protocol directly in the delegated prompt. The delegate must produce artifact bodies in `/tmp/{skill}-{timestamp}.md` first and must avoid direct Read, Bash, Write, or Edit targets under `.claude/**` in unattended flows.
|
|
20
|
+
|
|
17
21
|
## Usage
|
|
18
22
|
|
|
19
23
|
```
|
|
@@ -22,6 +22,10 @@ target Build output path or project root (optional, auto-detects)
|
|
|
22
22
|
--verbose, -v Show detailed analysis
|
|
23
23
|
```
|
|
24
24
|
|
|
25
|
+
## Sensitive-Path Delegation
|
|
26
|
+
|
|
27
|
+
Sensitive-path artifact protocol (mandatory): if this skill delegates work that touches `.claude/**`, `.claude/outputs/**`, `templates/.claude/**`, or read-only measurements of those paths, include this protocol directly in the delegated prompt. The delegate must produce artifact bodies in `/tmp/{skill}-{timestamp}.md` first and must avoid direct Read, Bash, Write, or Edit targets under `.claude/**` in unattended flows.
|
|
28
|
+
|
|
25
29
|
## Workflow
|
|
26
30
|
|
|
27
31
|
```
|
|
@@ -18,6 +18,10 @@ Generate comprehensive optimization report with analysis, metrics, and recommend
|
|
|
18
18
|
Default: text
|
|
19
19
|
```
|
|
20
20
|
|
|
21
|
+
## Sensitive-Path Delegation
|
|
22
|
+
|
|
23
|
+
Sensitive-path artifact protocol (mandatory): if this skill delegates work that touches `.claude/**`, `.claude/outputs/**`, `templates/.claude/**`, or read-only measurements of those paths, include this protocol directly in the delegated prompt. The delegate must produce artifact bodies in `/tmp/{skill}-{timestamp}.md` first and must avoid direct Read, Bash, Write, or Edit targets under `.claude/**` in unattended flows.
|
|
24
|
+
|
|
21
25
|
## Workflow
|
|
22
26
|
|
|
23
27
|
```
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
name: professor-triage
|
|
3
3
|
description: Analyze GitHub issues against current codebase and perform automated triage with priority assessment
|
|
4
4
|
scope: harness
|
|
5
|
-
version: 2.
|
|
5
|
+
version: 2.2.0
|
|
6
6
|
user-invocable: true
|
|
7
7
|
effort: high
|
|
8
8
|
context: fork
|
|
@@ -126,27 +126,27 @@ For each analyzed issue, generate multi-perspective analysis comments and artifa
|
|
|
126
126
|
```
|
|
127
127
|
## 🏛️ Senior Architect Analysis
|
|
128
128
|
|
|
129
|
-
###
|
|
130
|
-
|
|
|
131
|
-
|
|
132
|
-
| {
|
|
129
|
+
### 아키텍처 영향
|
|
130
|
+
| 컴포넌트 | 영향 | 위험도 |
|
|
131
|
+
|----------|------|--------|
|
|
132
|
+
| {컴포넌트} | {설명} | {High/Medium/Low} |
|
|
133
133
|
|
|
134
|
-
###
|
|
135
|
-
{
|
|
134
|
+
### 코드 수준 분석
|
|
135
|
+
{Phase 2 코드베이스 분석의 구체적 file:line 참조}
|
|
136
136
|
|
|
137
|
-
###
|
|
138
|
-
-
|
|
139
|
-
-
|
|
137
|
+
### 전략적 평가
|
|
138
|
+
- **실현 가능성**: {근거가 포함된 평가}
|
|
139
|
+
- **우선순위 권장**: {P1/P2/P3 및 근거}
|
|
140
140
|
|
|
141
|
-
###
|
|
142
|
-
|
|
|
143
|
-
|
|
144
|
-
| {
|
|
141
|
+
### 리스크 및 고려사항
|
|
142
|
+
| 리스크 | 가능성 | 완화 방안 |
|
|
143
|
+
|--------|--------|----------|
|
|
144
|
+
| {리스크} | {High/Medium/Low} | {완화 방안} |
|
|
145
145
|
|
|
146
|
-
|
|
146
|
+
**예상 작업량**: {XS/S/M/L/XL}
|
|
147
147
|
|
|
148
148
|
---
|
|
149
|
-
_🏛️ Senior Architect perspective — `/professor-triage` v2.
|
|
149
|
+
_🏛️ Senior Architect perspective — `/professor-triage` v2.2.0_
|
|
150
150
|
```
|
|
151
151
|
|
|
152
152
|
**4B: 🤝 Project Colleague Review** — Delegate to arch-documenter (model: sonnet) to post GitHub comment:
|
|
@@ -154,19 +154,19 @@ _🏛️ Senior Architect perspective — `/professor-triage` v2.1.0_
|
|
|
154
154
|
```
|
|
155
155
|
## 🤝 Project Colleague Review
|
|
156
156
|
|
|
157
|
-
###
|
|
158
|
-
{
|
|
157
|
+
### 구현 아이디어
|
|
158
|
+
{구체적 코드 위치 및 file:line 참조가 포함된 변경 제안}
|
|
159
159
|
|
|
160
|
-
###
|
|
161
|
-
- {
|
|
160
|
+
### 놓치기 쉬운 세부사항
|
|
161
|
+
- {이름 충돌, 유효성 검사 우회, 경쟁 조건, 엣지 케이스}
|
|
162
162
|
|
|
163
|
-
###
|
|
164
|
-
1. {
|
|
165
|
-
2. {
|
|
166
|
-
3. {
|
|
163
|
+
### 권장 다음 단계
|
|
164
|
+
1. {구체적 file/function 참조가 포함된 실행 가능한 단계}
|
|
165
|
+
2. {실행 가능한 단계}
|
|
166
|
+
3. {실행 가능한 단계}
|
|
167
167
|
|
|
168
168
|
---
|
|
169
|
-
_🤝 Project Colleague perspective — `/professor-triage` v2.
|
|
169
|
+
_🤝 Project Colleague perspective — `/professor-triage` v2.2.0_
|
|
170
170
|
```
|
|
171
171
|
|
|
172
172
|
Note: Do NOT include a "First Impressions" (첫인상) section in the Colleague Review — this was explicitly excluded per user feedback.
|
|
@@ -176,38 +176,38 @@ Note: Do NOT include a "First Impressions" (첫인상) section in the Colleague
|
|
|
176
176
|
```
|
|
177
177
|
## 🎓 Professor Synthesis
|
|
178
178
|
|
|
179
|
-
###
|
|
180
|
-
|
|
|
181
|
-
|
|
182
|
-
| {
|
|
179
|
+
### 코드베이스 검증
|
|
180
|
+
| 주장 (Architect/Colleague) | 검증 | 근거 |
|
|
181
|
+
|---------------------------|------|------|
|
|
182
|
+
| {주장} | ✅/⚠️/❌ | {file:line 또는 git 근거} |
|
|
183
183
|
|
|
184
|
-
###
|
|
185
|
-
|
|
|
186
|
-
|
|
187
|
-
| {
|
|
184
|
+
### 합의 및 이견
|
|
185
|
+
| 주제 | Architect | Colleague | 판정 |
|
|
186
|
+
|------|-----------|-----------|------|
|
|
187
|
+
| {주제} | {입장} | {입장} | {종합 판단} |
|
|
188
188
|
|
|
189
|
-
###
|
|
190
|
-
|
|
|
191
|
-
|
|
192
|
-
|
|
|
193
|
-
|
|
|
194
|
-
|
|
|
195
|
-
|
|
|
189
|
+
### 우선순위 매트릭스
|
|
190
|
+
| 차원 | 평가 |
|
|
191
|
+
|------|------|
|
|
192
|
+
| 긴급성 | {High/Medium/Low} |
|
|
193
|
+
| 중요성 | {High/Medium/Low} |
|
|
194
|
+
| 규모 | {XS/S/M/L/XL} |
|
|
195
|
+
| 권장 순서 | {배치 내 N/M} |
|
|
196
196
|
|
|
197
|
-
###
|
|
198
|
-
{
|
|
197
|
+
### 누락된 관점
|
|
198
|
+
{Architect나 Colleague 모두 제기하지 않은 고려사항}
|
|
199
199
|
|
|
200
|
-
###
|
|
201
|
-
|
|
|
202
|
-
|
|
203
|
-
| 1 | {
|
|
204
|
-
| 2 | {
|
|
200
|
+
### 실행 로드맵
|
|
201
|
+
| 단계 | 작업 | 파일 | 의존성 |
|
|
202
|
+
|------|------|------|--------|
|
|
203
|
+
| 1 | {작업} | {파일} | — |
|
|
204
|
+
| 2 | {작업} | {파일} | 단계 1 |
|
|
205
205
|
|
|
206
|
-
###
|
|
207
|
-
{
|
|
206
|
+
### 최종 결론
|
|
207
|
+
{확정적 권장 사항이 포함된 2-3문장 종합}
|
|
208
208
|
|
|
209
209
|
---
|
|
210
|
-
_🎓 Professor Synthesis — `/professor-triage` v2.
|
|
210
|
+
_🎓 Professor Synthesis — `/professor-triage` v2.2.0_
|
|
211
211
|
```
|
|
212
212
|
|
|
213
213
|
**4D: Issue Triage Comment (MANDATORY)** — Every analyzed issue MUST receive a triage comment. This is not optional — even for issues created in the same session or with existing analysis. Skipping comments breaks the triage audit trail. Delegate to mgr-gitnerd to post on each analyzed issue:
|
|
@@ -215,14 +215,14 @@ _🎓 Professor Synthesis — `/professor-triage` v2.1.0_
|
|
|
215
215
|
```
|
|
216
216
|
## 🔬 Professor Triage — Codebase Analysis Result
|
|
217
217
|
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
218
|
+
**결정**: {Close (Already Resolved) | Close (Not Applicable) | Close (Duplicate of #NNN) | Open — action required | Open — monitoring}
|
|
219
|
+
**근거**: {코드베이스 분석 기반 1-2줄 요약}
|
|
220
|
+
**영향 파일**: {N}개 분석 — {N}✅ {N}⚠️ {N}❌
|
|
221
|
+
**리스크**: {P1/P2/P3} | **규모**: {XS/S/M/L/XL}
|
|
222
|
+
**전체 리포트**: {artifact path}
|
|
223
223
|
|
|
224
224
|
---
|
|
225
|
-
|
|
225
|
+
_`/professor-triage` v2.2.0에 의해 현재 코드베이스 대비 분석됨 — 관련 이슈 {N}개_
|
|
226
226
|
```
|
|
227
227
|
|
|
228
228
|
**4E: Artifact Report** — Delegate to arch-documenter to write:
|
|
@@ -231,39 +231,41 @@ Path: `.codex/outputs/sessions/YYYY-MM-DD/professor-triage-HHmmss.md`
|
|
|
231
231
|
|
|
232
232
|
Timestamps use local machine time (consistent with other artifact skills).
|
|
233
233
|
|
|
234
|
+
Sensitive-path artifact protocol (mandatory): if a delegated agent must create or inspect Claude compatibility artifacts under `.claude/**`, `.claude/outputs/**`, or `templates/.claude/**`, include this protocol in the delegated prompt. The agent must produce artifact bodies in `/tmp/professor-triage-{timestamp}.md` first and must not call Read, Bash, Write, or Edit directly on `.claude/**` paths in unattended flows. Codex-native `.codex/outputs/**` artifacts continue to use managed file-write APIs that create parents.
|
|
235
|
+
|
|
234
236
|
Template:
|
|
235
237
|
```
|
|
236
|
-
# Professor Triage
|
|
238
|
+
# Professor Triage 리포트 — YYYY-MM-DD
|
|
237
239
|
|
|
238
|
-
##
|
|
239
|
-
| # |
|
|
240
|
-
|
|
240
|
+
## 분석 대상
|
|
241
|
+
| # | 제목 | 라벨 | 생성일 |
|
|
242
|
+
|---|------|------|--------|
|
|
241
243
|
|
|
242
|
-
##
|
|
244
|
+
## 이슈별 분석
|
|
243
245
|
### #NNN — title
|
|
244
|
-
-
|
|
245
|
-
-
|
|
246
|
-
-
|
|
247
|
-
-
|
|
248
|
-
-
|
|
249
|
-
-
|
|
250
|
-
-
|
|
251
|
-
|
|
252
|
-
##
|
|
253
|
-
###
|
|
254
|
-
###
|
|
255
|
-
###
|
|
256
|
-
###
|
|
257
|
-
|
|
258
|
-
##
|
|
259
|
-
### Architect
|
|
260
|
-
### Colleague
|
|
261
|
-
### Professor Synthesis
|
|
262
|
-
|
|
263
|
-
##
|
|
264
|
-
|
|
|
265
|
-
|
|
266
|
-
##
|
|
246
|
+
- **영향 파일**: N개 분석 — N✅ N⚠️ N❌
|
|
247
|
+
- **아키텍처 영향**: ...
|
|
248
|
+
- **구현 경로**: ...
|
|
249
|
+
- **리스크/우선순위**: P1/P2/P3
|
|
250
|
+
- **규모**: XS/S/M/L/XL
|
|
251
|
+
- **이미 해결됨?**: Yes/No/Partial — 근거
|
|
252
|
+
- **권장 조치**: ...
|
|
253
|
+
|
|
254
|
+
## 교차 분석
|
|
255
|
+
### 공통 패턴
|
|
256
|
+
### 중복/병합 후보
|
|
257
|
+
### 상충 발견사항 해결
|
|
258
|
+
### 우선순위 매트릭스
|
|
259
|
+
|
|
260
|
+
## 다관점 요약
|
|
261
|
+
### Architect 주요 사항
|
|
262
|
+
### Colleague 주요 사항
|
|
263
|
+
### Professor Synthesis 핵심 포인트
|
|
264
|
+
|
|
265
|
+
## 실행된 조치
|
|
266
|
+
| 이슈 | 조치 | 상태 |
|
|
267
|
+
|
|
268
|
+
## 보류 중인 조치 (확인 필요)
|
|
267
269
|
```
|
|
268
270
|
|
|
269
271
|
### Phase 4F: Comment Verification Gate
|
|
@@ -92,6 +92,10 @@ Delegate to mgr-creator with context:
|
|
|
92
92
|
- Specialized QA methodologies (e.g., "뮤테이션 테스트 전략 만들어줘")
|
|
93
93
|
- Performance/security testing tools not covered by existing agents
|
|
94
94
|
|
|
95
|
+
## Sensitive-Path Delegation
|
|
96
|
+
|
|
97
|
+
Sensitive-path artifact protocol (mandatory): if this skill delegates work that touches `.claude/**`, `.claude/outputs/**`, `templates/.claude/**`, or read-only measurements of those paths, include this protocol directly in the delegated prompt. The delegate must produce artifact bodies in `/tmp/{skill}-{timestamp}.md` first and must avoid direct Read, Bash, Write, or Edit targets under `.claude/**` in unattended flows.
|
|
98
|
+
|
|
95
99
|
## Usage
|
|
96
100
|
|
|
97
101
|
This skill is NOT user-invocable. It should be automatically triggered when the main conversation detects QA intent.
|
|
@@ -214,6 +214,7 @@ Convergence expected by round 3. Hard stop at round 30.
|
|
|
214
214
|
---
|
|
215
215
|
```
|
|
216
216
|
The agent writes the artifact file using a file-write API that creates missing parent directories; do not run any Bash directory-creation pre-step for session outputs (R010 compliance).
|
|
217
|
+
Sensitive-path artifact protocol (mandatory): if a delegated research agent must inspect or create Claude compatibility artifacts under `.claude/**`, `.claude/outputs/**`, or `templates/.claude/**`, the delegated prompt must require `/tmp/research-{timestamp}.md` as the first artifact body target and must forbid direct Read, Bash, Write, or Edit targets under `.claude/**` in unattended flows.
|
|
217
218
|
3. GitHub issue auto-created with findings
|
|
218
219
|
4. Action items with effort estimates
|
|
219
220
|
|
|
@@ -20,6 +20,10 @@ Run a bounded debate when convergence would hide useful disagreement. Unlike `ag
|
|
|
20
20
|
- Review work where anchoring or groupthink is likely.
|
|
21
21
|
- Decisions where a minority risk could be more important than the majority preference.
|
|
22
22
|
|
|
23
|
+
## Sensitive-Path Delegation
|
|
24
|
+
|
|
25
|
+
Sensitive-path artifact protocol (mandatory): if this skill delegates work that touches `.claude/**`, `.claude/outputs/**`, `templates/.claude/**`, or read-only measurements of those paths, include this protocol directly in the delegated prompt. The delegate must produce artifact bodies in `/tmp/{skill}-{timestamp}.md` first and must avoid direct Read, Bash, Write, or Edit targets under `.claude/**` in unattended flows.
|
|
26
|
+
|
|
23
27
|
## Workflow
|
|
24
28
|
|
|
25
29
|
1. **Independent-first analysis**: spawn 3-5 reviewers in parallel. Do not share intermediate opinions before each reviewer submits an initial view.
|
|
@@ -11,6 +11,10 @@ argument-hint: "<url>"
|
|
|
11
11
|
|
|
12
12
|
Analyze an external URL (tech blog, tool, library, methodology) to evaluate its fit with the oh-my-customcodex project and auto-create a GitHub issue with a structured verdict.
|
|
13
13
|
|
|
14
|
+
## Sensitive-Path Delegation
|
|
15
|
+
|
|
16
|
+
Sensitive-path artifact protocol (mandatory): if this skill delegates work that touches `.claude/**`, `.claude/outputs/**`, `templates/.claude/**`, or read-only measurements of those paths, include this protocol directly in the delegated prompt. The delegate must produce artifact bodies in `/tmp/{skill}-{timestamp}.md` first and must avoid direct Read, Bash, Write, or Edit targets under `.claude/**` in unattended flows.
|
|
17
|
+
|
|
14
18
|
## Usage
|
|
15
19
|
|
|
16
20
|
```
|
|
@@ -58,13 +62,13 @@ Before execution, show the plan:
|
|
|
58
62
|
|
|
59
63
|
```
|
|
60
64
|
[Scout] {url}
|
|
61
|
-
├── Phase 1:
|
|
62
|
-
├── Phase 2:
|
|
63
|
-
├── Phase 3:
|
|
64
|
-
└── Phase 4:
|
|
65
|
+
├── Phase 1: 콘텐츠 수집 및 요약
|
|
66
|
+
├── Phase 2: 프로젝트 철학 로드
|
|
67
|
+
├── Phase 3: 적합성 분석 (sonnet)
|
|
68
|
+
└── Phase 4: 이슈 생성
|
|
65
69
|
|
|
66
|
-
|
|
67
|
-
|
|
70
|
+
예상: ~1분 | 비용: ~$0.5-1.5
|
|
71
|
+
실행하시겠습니까? [Y/n]
|
|
68
72
|
```
|
|
69
73
|
|
|
70
74
|
## Workflow
|
|
@@ -135,6 +139,7 @@ Return a structured verdict:
|
|
|
135
139
|
- philosophy_table: criterion/fit/rationale for each dimension
|
|
136
140
|
- recommendation: specific integration plan or skip reason
|
|
137
141
|
- next_steps: 2-3 actionable items
|
|
142
|
+
- IMPORTANT: Write all analysis output in Korean. Technical terms, code references, label names, and skill/agent names stay in English.
|
|
138
143
|
- escalation: true/false (INTERNALIZE + M/L effort = true)
|
|
139
144
|
```
|
|
140
145
|
|
|
@@ -165,32 +170,32 @@ gh issue close {number} -c "Auto-closed: scout verdict is SKIP"
|
|
|
165
170
|
### Issue Body Template
|
|
166
171
|
|
|
167
172
|
```markdown
|
|
168
|
-
## Scout
|
|
173
|
+
## Scout 리포트: {title}
|
|
169
174
|
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
175
|
+
**출처**: {url}
|
|
176
|
+
**판정**: {INTERNALIZE / INTEGRATE / SKIP}
|
|
177
|
+
**우선순위**: {P1 / P2 / P3}
|
|
173
178
|
|
|
174
|
-
##
|
|
175
|
-
{2-3
|
|
179
|
+
## 요약
|
|
180
|
+
{외부 콘텐츠에 대한 2-3문장 요약}
|
|
176
181
|
|
|
177
|
-
##
|
|
178
|
-
|
|
|
179
|
-
|
|
180
|
-
| Compilation metaphor | {check/cross} | {
|
|
181
|
-
| Separation of concerns (R006) | {check/cross} | {
|
|
182
|
-
| Dynamic agent creation | {check/cross} | {
|
|
183
|
-
|
|
|
182
|
+
## 프로젝트 철학 정합성
|
|
183
|
+
| 기준 | 적합 | 근거 |
|
|
184
|
+
|------|------|------|
|
|
185
|
+
| Compilation metaphor | {check/cross} | {설명} |
|
|
186
|
+
| Separation of concerns (R006) | {check/cross} | {설명} |
|
|
187
|
+
| Dynamic agent creation | {check/cross} | {설명} |
|
|
188
|
+
| 기존 스킬 중복 | {check/cross} | {중복 스킬 목록} |
|
|
184
189
|
|
|
185
|
-
##
|
|
186
|
-
{
|
|
190
|
+
## 권장 사항
|
|
191
|
+
{구체적 통합 계획 — 어떤 skill/agent/guide를 생성할지, 또는 건너뛰는 이유}
|
|
187
192
|
|
|
188
|
-
##
|
|
189
|
-
- [ ] {
|
|
190
|
-
- [ ] {
|
|
193
|
+
## 다음 단계
|
|
194
|
+
- [ ] {후속 조치 1}
|
|
195
|
+
- [ ] {후속 조치 2}
|
|
191
196
|
|
|
192
197
|
---
|
|
193
|
-
|
|
198
|
+
`/scout`에 의해 생성됨
|
|
194
199
|
```
|
|
195
200
|
|
|
196
201
|
## Escalation
|
|
@@ -198,18 +203,18 @@ Generated by `/scout`
|
|
|
198
203
|
When verdict is `INTERNALIZE` and integration effort is M or L:
|
|
199
204
|
|
|
200
205
|
```
|
|
201
|
-
[Advisory]
|
|
202
|
-
└──
|
|
206
|
+
[Advisory] 심층 분석 권장.
|
|
207
|
+
└── 실행 검토: /research {url}
|
|
203
208
|
```
|
|
204
209
|
|
|
205
210
|
## Result Display
|
|
206
211
|
|
|
207
212
|
```
|
|
208
|
-
[Scout
|
|
209
|
-
├──
|
|
210
|
-
├──
|
|
211
|
-
├──
|
|
212
|
-
└──
|
|
213
|
+
[Scout 완료] {title}
|
|
214
|
+
├── 판정: {INTERNALIZE / INTEGRATE / SKIP}
|
|
215
|
+
├── 우선순위: {P1 / P2 / P3}
|
|
216
|
+
├── 이슈: #{number}
|
|
217
|
+
└── 에스컬레이션: {/research 권장 | 없음}
|
|
213
218
|
```
|
|
214
219
|
|
|
215
220
|
## Model Selection
|
|
@@ -16,7 +16,7 @@ Routes agent management tasks to the appropriate manager agent. This skill conta
|
|
|
16
16
|
|
|
17
17
|
| Agent | Purpose | Triggers |
|
|
18
18
|
|-------|---------|----------|
|
|
19
|
-
| mgr-creator | Create new agents | "create agent", "new agent" |
|
|
19
|
+
| mgr-creator | Create new agents, skills, guides | "create agent", "new agent", "create skill", "new skill", "create guide", "new guide" |
|
|
20
20
|
| mgr-updater | Update external agents | "update agent", "sync" |
|
|
21
21
|
| mgr-supplier | Validate dependencies | "audit", "check deps" |
|
|
22
22
|
| mgr-gitnerd | Git operations | "commit", "push", "pr" |
|
|
@@ -45,6 +45,8 @@ Before routing via Task tool, evaluate Agent Teams eligibility first:
|
|
|
45
45
|
User Input → Routing → Manager Agent
|
|
46
46
|
|
|
47
47
|
create → mgr-creator
|
|
48
|
+
create skill → mgr-creator
|
|
49
|
+
create guide → mgr-creator
|
|
48
50
|
update → mgr-updater
|
|
49
51
|
audit → mgr-supplier
|
|
50
52
|
git → mgr-gitnerd
|
|
@@ -130,6 +132,10 @@ Evaluate: Is this a specialized management/tooling task?
|
|
|
130
132
|
- New monitoring tool setup (e.g., "Grafana 대시보드 관리")
|
|
131
133
|
- Unfamiliar package manager operations
|
|
132
134
|
|
|
135
|
+
## Sensitive-Path Delegation
|
|
136
|
+
|
|
137
|
+
Sensitive-path artifact protocol (mandatory): if this skill delegates work that touches `.claude/**`, `.claude/outputs/**`, `templates/.claude/**`, or read-only measurements of those paths, include this protocol directly in the delegated prompt. The delegate must produce artifact bodies in `/tmp/{skill}-{timestamp}.md` first and must avoid direct Read, Bash, Write, or Edit targets under `.claude/**` in unattended flows.
|
|
138
|
+
|
|
133
139
|
## Usage
|
|
134
140
|
|
|
135
141
|
This skill is NOT user-invocable. It is automatically triggered when the main conversation detects agent management intent.
|
|
@@ -10,6 +10,10 @@ user-invocable: false
|
|
|
10
10
|
|
|
11
11
|
Analyzes task complexity and decomposes large tasks into smaller, parallelizable subtasks compatible with the DAG orchestration skill. The orchestrator uses this as a planning frontend before execution.
|
|
12
12
|
|
|
13
|
+
## Sensitive-Path Delegation
|
|
14
|
+
|
|
15
|
+
Sensitive-path artifact protocol (mandatory): if this skill delegates work that touches `.claude/**`, `.claude/outputs/**`, `templates/.claude/**`, or read-only measurements of those paths, include this protocol directly in the delegated prompt. The delegate must produce artifact bodies in `/tmp/{skill}-{timestamp}.md` first and must avoid direct Read, Bash, Write, or Edit targets under `.claude/**` in unattended flows.
|
|
16
|
+
|
|
13
17
|
## Trigger Conditions
|
|
14
18
|
|
|
15
19
|
Decomposition is **recommended** when any of these thresholds are met:
|
|
@@ -48,6 +52,12 @@ Before decomposing, select the appropriate workflow pattern:
|
|
|
48
52
|
├── Map subtasks to agents (use routing skills)
|
|
49
53
|
└── Generate DAG workflow spec
|
|
50
54
|
|
|
55
|
+
2.5. Validate granularity against pipeline-guards limits:
|
|
56
|
+
├── For each subtask, estimate file count
|
|
57
|
+
├── If files > 10 → emit advisory: [Guard] ⚠ Subtask "{id}" assigned {n} files (> 10) — splitting by layer
|
|
58
|
+
├── If files > 15 → emit hard warning: [Guard] 🛑 Subtask "{id}" assigned {n} files (> 15) — must split
|
|
59
|
+
└── Auto-split oversized subtasks by layer/domain until all ≤ 10
|
|
60
|
+
|
|
51
61
|
3. Present plan to user (R015 transparency)
|
|
52
62
|
├── Show decomposed subtasks with agents
|
|
53
63
|
├── Show dependency graph
|
|
@@ -172,10 +182,43 @@ A subtask is **atomic** when it meets ALL of:
|
|
|
172
182
|
- Single concern (one logical change)
|
|
173
183
|
- Independently testable outcome
|
|
174
184
|
- < 15 minutes estimated duration
|
|
175
|
-
- < 3 files affected
|
|
185
|
+
- < 3 files affected (ideal atomic size)
|
|
186
|
+
- MUST NOT exceed 10 files (pipeline-guards advisory threshold)
|
|
187
|
+
- If > 10 files unavoidable → emit [Guard] warning and split by layer/domain
|
|
188
|
+
- > 15 files is a hard violation — always split further (pipeline-guards hard cap)
|
|
176
189
|
|
|
177
190
|
If a subtask is not atomic → decompose further (max 2 levels deep).
|
|
178
191
|
|
|
192
|
+
## Granularity Validation
|
|
193
|
+
|
|
194
|
+
After decomposition, validate each subtask against pipeline-guards file limits:
|
|
195
|
+
|
|
196
|
+
| Subtask Files | Action |
|
|
197
|
+
|---------------|--------|
|
|
198
|
+
| ≤ 3 | Ideal atomic size — no action |
|
|
199
|
+
| 4-10 | Acceptable — proceed without warning |
|
|
200
|
+
| 11-15 | Advisory warning, attempt further split |
|
|
201
|
+
| > 15 | Hard warning, MUST split before execution |
|
|
202
|
+
|
|
203
|
+
### Validation Process
|
|
204
|
+
|
|
205
|
+
For each decomposed subtask:
|
|
206
|
+
1. Count estimated files
|
|
207
|
+
2. If > 10:
|
|
208
|
+
a. Emit: `[Guard] ⚠ Subtask "{id}" assigned {n} files (> 10) — splitting by layer`
|
|
209
|
+
b. Attempt split by: layer (domain → adapter → handler) or domain separation
|
|
210
|
+
c. Re-validate split results
|
|
211
|
+
3. If > 15 after split attempt:
|
|
212
|
+
a. Emit: `[Guard] 🛑 Subtask "{id}" still has {n} files (> 15) — requires user override`
|
|
213
|
+
b. Pause for user confirmation before proceeding
|
|
214
|
+
|
|
215
|
+
### Generated DAG Adjustment
|
|
216
|
+
|
|
217
|
+
When granularity validation triggers a split, update the DAG spec:
|
|
218
|
+
- Original node is replaced by 2+ child nodes
|
|
219
|
+
- Dependencies are preserved (children inherit parent's deps)
|
|
220
|
+
- `max_parallel` in config respects R009 limits (soft: 4, hard: 5)
|
|
221
|
+
|
|
179
222
|
## Skip Decomposition When
|
|
180
223
|
|
|
181
224
|
| Condition | Reason |
|
|
@@ -195,3 +238,4 @@ If a subtask is not atomic → decompose further (max 2 levels deep).
|
|
|
195
238
|
| R010 | Decomposition happens in orchestrator only |
|
|
196
239
|
| R015 | Plan displayed before execution for user approval |
|
|
197
240
|
| R018 | 3+ agents in plan → check Agent Teams eligibility |
|
|
241
|
+
| pipeline-guards | Validates subtask file count against 10/15 granularity limits |
|
|
@@ -12,6 +12,10 @@ Defines an iterative Worker→Reviewer pipeline where one agent implements chang
|
|
|
12
12
|
|
|
13
13
|
**Orchestrator-only** — only the main conversation activates this pipeline (R010). Worker and Reviewer are subagents.
|
|
14
14
|
|
|
15
|
+
## Sensitive-Path Delegation
|
|
16
|
+
|
|
17
|
+
Sensitive-path artifact protocol (mandatory): if this skill delegates work that touches `.claude/**`, `.claude/outputs/**`, `templates/.claude/**`, or read-only measurements of those paths, include this protocol directly in the delegated prompt. The delegate must produce artifact bodies in `/tmp/{skill}-{timestamp}.md` first and must avoid direct Read, Bash, Write, or Edit targets under `.claude/**` in unattended flows.
|
|
18
|
+
|
|
15
19
|
## When to Activate
|
|
16
20
|
|
|
17
21
|
| Condition | Activate? |
|
package/templates/manifest.json
CHANGED
|
@@ -36,6 +36,7 @@ steps:
|
|
|
36
36
|
- Codex-managed `.codex/` edits use the normal edit/patch flow.
|
|
37
37
|
- Do not adopt upstream Claude-only `/tmp` bypass guidance as the default path.
|
|
38
38
|
- If a port requires `.claude` template parity changes, make the change explicit and verify sensitive-path guard tests.
|
|
39
|
+
- Sensitive-path artifact protocol (mandatory): delegated prompts that touch `.claude/**`, `templates/.claude/**`, `.claude/outputs/**`, or read-only measurements of those paths must instruct the subagent to produce artifact bodies in `/tmp/{skill}-{timestamp}.md` first and avoid direct Read/Bash/Write/Edit targets under `.claude/**` in unattended flows.
|
|
39
40
|
description: Execute implementation plan with appropriate agents
|
|
40
41
|
foreach: planned-issue
|
|
41
42
|
|