oh-my-customcode 0.60.0 → 0.60.1
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 +3 -3
- package/dist/cli/index.js +1 -1
- package/dist/index.js +1 -1
- package/package.json +1 -1
- package/templates/.claude/rules/MUST-agent-teams.md +9 -0
- package/templates/.claude/skills/action-validator/SKILL.md +75 -0
- package/templates/.claude/skills/adversarial-review/SKILL.md +8 -0
- package/templates/.claude/skills/monitoring-setup/SKILL.md +29 -0
- package/templates/.claude/skills/peer-messaging/SKILL.md +59 -0
- package/templates/CLAUDE.md +1 -1
- package/templates/manifest.json +2 -2
package/README.md
CHANGED
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
|
|
14
14
|
**[한국어 문서 (Korean)](./README_ko.md)**
|
|
15
15
|
|
|
16
|
-
46 agents.
|
|
16
|
+
46 agents. 97 skills. 21 rules. One command.
|
|
17
17
|
|
|
18
18
|
```bash
|
|
19
19
|
npm install -g oh-my-customcode && cd your-project && omcustom init
|
|
@@ -146,7 +146,7 @@ Each agent declares its tools, model, memory scope, and limitations in YAML fron
|
|
|
146
146
|
|
|
147
147
|
---
|
|
148
148
|
|
|
149
|
-
### Skills (
|
|
149
|
+
### Skills (97)
|
|
150
150
|
|
|
151
151
|
| Category | Count | Includes |
|
|
152
152
|
|----------|-------|----------|
|
|
@@ -282,7 +282,7 @@ your-project/
|
|
|
282
282
|
├── CLAUDE.md # Entry point
|
|
283
283
|
├── .claude/
|
|
284
284
|
│ ├── agents/ # 46 agent definitions
|
|
285
|
-
│ ├── skills/ #
|
|
285
|
+
│ ├── skills/ # 97 skill modules
|
|
286
286
|
│ ├── rules/ # 21 governance rules (R000-R021)
|
|
287
287
|
│ ├── hooks/ # 15 lifecycle hook scripts
|
|
288
288
|
│ ├── schemas/ # Tool input validation schemas
|
package/dist/cli/index.js
CHANGED
package/dist/index.js
CHANGED
package/package.json
CHANGED
|
@@ -25,6 +25,15 @@ Available when `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1` or TeamCreate/SendMessag
|
|
|
25
25
|
|
|
26
26
|
**When Agent Teams is enabled and criteria are met, usage is required.**
|
|
27
27
|
|
|
28
|
+
### Scope: Intra-Session vs Cross-Session
|
|
29
|
+
|
|
30
|
+
| Scope | Tool | Protocol | Use Case |
|
|
31
|
+
|-------|------|----------|----------|
|
|
32
|
+
| Intra-session | `SendMessage` (Agent Teams) | Peer-to-peer within team | Multi-agent collaboration in one session |
|
|
33
|
+
| Cross-session | `send_message` (claude-peers-mcp) | Broker-mediated | Multi-terminal/project coordination |
|
|
34
|
+
|
|
35
|
+
These are distinct mechanisms. Agent Teams `SendMessage` requires `TeamCreate` and operates within a single Claude Code session. claude-peers-mcp `send_message` operates across separate Claude Code processes via a localhost broker.
|
|
36
|
+
|
|
28
37
|
## Self-Check (Before Agent Tool)
|
|
29
38
|
|
|
30
39
|
Before using Agent tool for 2+ agent tasks, complete this check:
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: action-validator
|
|
3
|
+
description: Pre-action boundary checking — validates agent tool calls against declared capabilities and task contracts
|
|
4
|
+
scope: core
|
|
5
|
+
user-invocable: false
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Action Validator Skill
|
|
9
|
+
|
|
10
|
+
## Purpose
|
|
11
|
+
|
|
12
|
+
Advisory pre-action validation layer that checks agent tool calls against declared capabilities, file access scope (R002), and task contracts before execution. Inspired by AutoHarness (Google DeepMind) — enforcing action-space legality at agent boundaries.
|
|
13
|
+
|
|
14
|
+
This skill does NOT block actions (R021 advisory-first model). It emits warnings when agents attempt operations outside their declared scope.
|
|
15
|
+
|
|
16
|
+
## Validation Checks
|
|
17
|
+
|
|
18
|
+
| Check | What | Against |
|
|
19
|
+
|-------|------|---------|
|
|
20
|
+
| Tool scope | Tool being called | Agent's `tools` frontmatter list |
|
|
21
|
+
| File scope | File path in Write/Edit | R002 file access rules |
|
|
22
|
+
| Domain scope | Target file extension | Agent's `domain` frontmatter |
|
|
23
|
+
| Task contract | Operation type | Task description constraints |
|
|
24
|
+
|
|
25
|
+
## Advisory Format
|
|
26
|
+
|
|
27
|
+
```
|
|
28
|
+
--- [Action Validator] Scope warning ---
|
|
29
|
+
Agent: {agent-name}
|
|
30
|
+
Tool: {tool-name}
|
|
31
|
+
Target: {file-path}
|
|
32
|
+
Issue: {description}
|
|
33
|
+
Declared scope: {agent's declared tools/domain}
|
|
34
|
+
💡 Suggestion: {recommended action}
|
|
35
|
+
---
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
## Integration Points
|
|
39
|
+
|
|
40
|
+
| System | How |
|
|
41
|
+
|--------|-----|
|
|
42
|
+
| PreToolUse hooks | Optional hook to check tool calls (advisory only) |
|
|
43
|
+
| pipeline-guards | Complements pipeline stage gates |
|
|
44
|
+
| adversarial-review | Provides action-space-legality criterion |
|
|
45
|
+
| R002 (Permissions) | Validates against declared file access rules |
|
|
46
|
+
| R010 (Orchestrator) | Orchestrator validates subagent scope claims |
|
|
47
|
+
|
|
48
|
+
## Policy Cache Pattern
|
|
49
|
+
|
|
50
|
+
For high-repetition agents (e.g., mgr-gitnerd commit workflows), capture validated decision paths as reusable policies:
|
|
51
|
+
|
|
52
|
+
```yaml
|
|
53
|
+
policy_cache:
|
|
54
|
+
agent: mgr-gitnerd
|
|
55
|
+
action: git-commit
|
|
56
|
+
validated_steps:
|
|
57
|
+
- tool: Bash
|
|
58
|
+
pattern: "git add *"
|
|
59
|
+
verdict: allow
|
|
60
|
+
- tool: Bash
|
|
61
|
+
pattern: "git commit *"
|
|
62
|
+
verdict: allow
|
|
63
|
+
- tool: Bash
|
|
64
|
+
pattern: "git push *"
|
|
65
|
+
verdict: warn_confirm
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
Policy caching reduces redundant LLM calls for well-understood workflows. Policies are advisory — the orchestrator may override.
|
|
69
|
+
|
|
70
|
+
## Scope
|
|
71
|
+
|
|
72
|
+
This skill is an advisory layer, not a hard enforcement mechanism:
|
|
73
|
+
- **Does**: Emit warnings, log scope violations, suggest corrections
|
|
74
|
+
- **Does NOT**: Block tool execution, modify agent behavior, override R021
|
|
75
|
+
- **Future**: May integrate with PreToolUse hooks for automated checking (see R021 promotion criteria)
|
|
@@ -70,3 +70,11 @@ Fix: Recommended remediation
|
|
|
70
70
|
- Complements `dev-review` (best practices) with attacker perspective
|
|
71
71
|
- Works with `sec-codeql-expert` for pattern-based + logic-based coverage
|
|
72
72
|
- Can be chained: `dev-review` → `adversarial-review` for complete coverage
|
|
73
|
+
- Works with `action-validator` for action-space legality checking
|
|
74
|
+
|
|
75
|
+
### Action-Space Legality (AutoHarness Pattern)
|
|
76
|
+
|
|
77
|
+
- [ ] Do agents only call tools within their declared `tools` frontmatter?
|
|
78
|
+
- [ ] Do file operations stay within R002-declared access scope?
|
|
79
|
+
- [ ] Are domain boundaries respected (backend agent not editing frontend files)?
|
|
80
|
+
- [ ] Could an agent's task contract be tightened without losing functionality?
|
|
@@ -114,3 +114,32 @@ OTEL_LOGS_EXPORTER=otlp
|
|
|
114
114
|
OTEL_EXPORTER_OTLP_PROTOCOL=grpc
|
|
115
115
|
OTEL_EXPORTER_OTLP_ENDPOINT=http://localhost:4317
|
|
116
116
|
```
|
|
117
|
+
|
|
118
|
+
## HTTP-Level Inspection (Optional)
|
|
119
|
+
|
|
120
|
+
For deeper payload-level debugging beyond aggregated metrics, [Claude Inspector](https://github.com/kangraemin/claude-inspector) provides MITM proxy inspection of Claude Code HTTP traffic.
|
|
121
|
+
|
|
122
|
+
| Aspect | OTel Monitoring (this skill) | Claude Inspector |
|
|
123
|
+
|--------|------------------------------|-----------------|
|
|
124
|
+
| Layer | Application (hooks, stdout) | HTTP (MITM proxy) |
|
|
125
|
+
| Metrics | Aggregated (cost, tokens, duration) | Per-request payload breakdown |
|
|
126
|
+
| Cache visibility | Not available | Prompt Cache hit/miss rates |
|
|
127
|
+
| Sub-agent view | Summary via hooks | Full parent vs sub-agent context comparison |
|
|
128
|
+
| Setup | Built-in (hooks + statusline) | External tool (Homebrew on macOS) |
|
|
129
|
+
|
|
130
|
+
### When to Use
|
|
131
|
+
|
|
132
|
+
- **OTel monitoring**: Daily operations, cost tracking, performance trends
|
|
133
|
+
- **Claude Inspector**: Debugging specific payload issues, measuring CLAUDE.md token impact, verifying ecomode (R013) effectiveness, profiling sub-agent context inheritance
|
|
134
|
+
|
|
135
|
+
### Setup
|
|
136
|
+
|
|
137
|
+
```bash
|
|
138
|
+
# macOS
|
|
139
|
+
brew install kangraemin/tap/claude-inspector
|
|
140
|
+
|
|
141
|
+
# Run proxy
|
|
142
|
+
claude-inspector
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
Claude Inspector is external to oh-my-customcode and does not require any project configuration changes.
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: peer-messaging
|
|
3
|
+
description: Cross-session Claude Code instance messaging via claude-peers-mcp broker
|
|
4
|
+
scope: core
|
|
5
|
+
user-invocable: false
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Peer Messaging Skill
|
|
9
|
+
|
|
10
|
+
## Purpose
|
|
11
|
+
|
|
12
|
+
Enables cross-session coordination between multiple Claude Code instances through the claude-peers-mcp broker. Complements Agent Teams (R018, intra-session) with inter-session messaging.
|
|
13
|
+
|
|
14
|
+
## Scope Clarification
|
|
15
|
+
|
|
16
|
+
| Scope | Mechanism | Tools | Use Case |
|
|
17
|
+
|-------|-----------|-------|----------|
|
|
18
|
+
| Intra-session agents | Agent Teams (R018) | TeamCreate, SendMessage | Single session multi-agent collaboration |
|
|
19
|
+
| Cross-session instances | claude-peers-mcp | list_peers, send_message | Multi-terminal/project real-time coordination |
|
|
20
|
+
| Cross-session memory | claude-mem | save_memory, search | Async memory persistence |
|
|
21
|
+
|
|
22
|
+
> **Important**: R018's `SendMessage` and claude-peers-mcp's `send_message` are different tools with different scopes. Do not confuse them.
|
|
23
|
+
|
|
24
|
+
## MCP Tool Mapping
|
|
25
|
+
|
|
26
|
+
| Tool | Purpose | oh-my-customcode Scenario |
|
|
27
|
+
|------|---------|---------------------------|
|
|
28
|
+
| `list_peers` | Discover active Claude instances | `omcustom:status` system overview |
|
|
29
|
+
| `send_message` | Send message to peer | Cross-project workflow coordination |
|
|
30
|
+
| `set_summary` | Broadcast current task summary | DAG cross-project step sync |
|
|
31
|
+
| `check_messages` | Read incoming messages | Receive coordination signals |
|
|
32
|
+
|
|
33
|
+
## Use Cases
|
|
34
|
+
|
|
35
|
+
### Multi-Project Workflow
|
|
36
|
+
Terminal A runs `auto-dev` on project-1; Terminal B works on dependent project-2. Peers coordinate via messages when blocking dependencies are resolved.
|
|
37
|
+
|
|
38
|
+
### Cross-Project QA
|
|
39
|
+
Share test infrastructure state between projects running concurrent test suites.
|
|
40
|
+
|
|
41
|
+
### DAG Bridge
|
|
42
|
+
`dag-orchestration` cross-project steps can use peer messaging for synchronization (currently impossible without this tool).
|
|
43
|
+
|
|
44
|
+
## Setup
|
|
45
|
+
|
|
46
|
+
```bash
|
|
47
|
+
# Install broker (optional MCP server)
|
|
48
|
+
npm install -g claude-peers-mcp
|
|
49
|
+
|
|
50
|
+
# Add to MCP config
|
|
51
|
+
claude mcp add claude-peers-mcp -- npx claude-peers-mcp
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
## Integration
|
|
55
|
+
|
|
56
|
+
- Works with R018 Agent Teams (different scope, complementary)
|
|
57
|
+
- Works with claude-mem (async vs sync messaging)
|
|
58
|
+
- Works with `omcustom:status` (peer discovery)
|
|
59
|
+
- Broker runs on localhost:7899 (SQLite-backed)
|
package/templates/CLAUDE.md
CHANGED
|
@@ -138,7 +138,7 @@ project/
|
|
|
138
138
|
+-- CLAUDE.md # 진입점
|
|
139
139
|
+-- .claude/
|
|
140
140
|
| +-- agents/ # 서브에이전트 정의 (46 파일)
|
|
141
|
-
| +-- skills/ # 스킬 (
|
|
141
|
+
| +-- skills/ # 스킬 (97 디렉토리)
|
|
142
142
|
| +-- rules/ # 전역 규칙 (R000-R021)
|
|
143
143
|
| +-- hooks/ # 훅 스크립트 (보안, 검증, HUD)
|
|
144
144
|
| +-- contexts/ # 컨텍스트 파일 (ecomode)
|
package/templates/manifest.json
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"version": "0.60.
|
|
2
|
+
"version": "0.60.1",
|
|
3
3
|
"lastUpdated": "2026-03-24T00:00:00.000Z",
|
|
4
4
|
"components": [
|
|
5
5
|
{
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
"name": "skills",
|
|
19
19
|
"path": ".claude/skills",
|
|
20
20
|
"description": "Reusable skill modules (includes slash commands)",
|
|
21
|
-
"files":
|
|
21
|
+
"files": 97
|
|
22
22
|
},
|
|
23
23
|
{
|
|
24
24
|
"name": "guides",
|