oh-my-githubcopilot 1.4.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/.claude-plugin/plugin.json +41 -0
- package/AGENTS.md +107 -0
- package/CHANGELOG.md +104 -0
- package/LICENSE +190 -0
- package/README.de.md +53 -0
- package/README.es.md +53 -0
- package/README.fr.md +53 -0
- package/README.it.md +53 -0
- package/README.ja.md +53 -0
- package/README.ko.md +53 -0
- package/README.md +139 -0
- package/README.pt.md +53 -0
- package/README.ru.md +53 -0
- package/README.tr.md +53 -0
- package/README.vi.md +53 -0
- package/README.zh.md +53 -0
- package/bin/omp.mjs +59 -0
- package/bin/omp.mjs.map +7 -0
- package/dist/hooks/delegation-enforcer.mjs +96 -0
- package/dist/hooks/delegation-enforcer.mjs.map +7 -0
- package/dist/hooks/hud-emitter.mjs +167 -0
- package/dist/hooks/hud-emitter.mjs.map +7 -0
- package/dist/hooks/keyword-detector.mjs +134 -0
- package/dist/hooks/keyword-detector.mjs.map +7 -0
- package/dist/hooks/model-router.mjs +79 -0
- package/dist/hooks/model-router.mjs.map +7 -0
- package/dist/hooks/stop-continuation.mjs +83 -0
- package/dist/hooks/stop-continuation.mjs.map +7 -0
- package/dist/hooks/token-tracker.mjs +181 -0
- package/dist/hooks/token-tracker.mjs.map +7 -0
- package/dist/mcp/server.mjs +28492 -0
- package/dist/mcp/server.mjs.map +7 -0
- package/dist/skills/mcp-setup.mjs +42 -0
- package/dist/skills/mcp-setup.mjs.map +7 -0
- package/dist/skills/setup.mjs +38 -0
- package/dist/skills/setup.mjs.map +7 -0
- package/hooks/hooks.json +47 -0
- package/package.json +70 -0
- package/skills/autopilot/SKILL.md +35 -0
- package/skills/configure-notifications/SKILL.md +35 -0
- package/skills/deep-interview/SKILL.md +35 -0
- package/skills/ecomode/SKILL.md +35 -0
- package/skills/graph-provider/SKILL.md +77 -0
- package/skills/graphify/SKILL.md +51 -0
- package/skills/graphwiki/SKILL.md +66 -0
- package/skills/hud/SKILL.md +35 -0
- package/skills/learner/SKILL.md +35 -0
- package/skills/mcp-setup/SKILL.md +34 -0
- package/skills/note/SKILL.md +35 -0
- package/skills/omp-plan/SKILL.md +35 -0
- package/skills/omp-setup/SKILL.md +37 -0
- package/skills/pipeline/SKILL.md +35 -0
- package/skills/psm/SKILL.md +35 -0
- package/skills/ralph/SKILL.md +35 -0
- package/skills/release/SKILL.md +35 -0
- package/skills/setup/SKILL.md +43 -0
- package/skills/spending/SKILL.md +86 -0
- package/skills/swarm/SKILL.md +35 -0
- package/skills/swe-bench/SKILL.md +35 -0
- package/skills/team/SKILL.md +35 -0
- package/skills/trace/SKILL.md +35 -0
- package/skills/ultrawork/SKILL.md +35 -0
- package/skills/wiki/SKILL.md +35 -0
- package/src/agents/analyst.md +103 -0
- package/src/agents/architect.md +169 -0
- package/src/agents/code-reviewer.md +135 -0
- package/src/agents/critic.md +196 -0
- package/src/agents/debugger.md +132 -0
- package/src/agents/designer.md +103 -0
- package/src/agents/document-specialist.md +111 -0
- package/src/agents/executor.md +120 -0
- package/src/agents/explorer.md +98 -0
- package/src/agents/git-master.md +92 -0
- package/src/agents/orchestrator.md +125 -0
- package/src/agents/planner.md +106 -0
- package/src/agents/qa-tester.md +129 -0
- package/src/agents/researcher.md +102 -0
- package/src/agents/reviewer.md +100 -0
- package/src/agents/scientist.md +150 -0
- package/src/agents/security-reviewer.md +132 -0
- package/src/agents/simplifier.md +109 -0
- package/src/agents/test-engineer.md +124 -0
- package/src/agents/tester.md +102 -0
- package/src/agents/tracer.md +160 -0
- package/src/agents/verifier.md +100 -0
- package/src/agents/writer.md +96 -0
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# Skill: Note
|
|
2
|
+
|
|
3
|
+
## Metadata
|
|
4
|
+
|
|
5
|
+
| Field | Value |
|
|
6
|
+
|-------|-------|
|
|
7
|
+
| **ID** | `note` |
|
|
8
|
+
| **Keywords** | `note:`, `/note` |
|
|
9
|
+
| **Tier** | Planning Tool |
|
|
10
|
+
| **Source** | `src/skills/note.mts` |
|
|
11
|
+
|
|
12
|
+
## Description
|
|
13
|
+
|
|
14
|
+
Manage persistent notepad entries — read, write, prune working memory.
|
|
15
|
+
|
|
16
|
+
## Interface
|
|
17
|
+
|
|
18
|
+
```typescript
|
|
19
|
+
interface SkillInput {
|
|
20
|
+
trigger: string;
|
|
21
|
+
args: string[];
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
interface SkillOutput {
|
|
25
|
+
status: "ok" | "error";
|
|
26
|
+
message: string;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
export async function activate(input: SkillInput): Promise<SkillOutput>
|
|
30
|
+
export function deactivate(): void
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
## Implementation
|
|
34
|
+
|
|
35
|
+
Spawns `bin/omp.mjs note [args]`. No persistent resources are maintained.
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# Skill: OMP-Plan
|
|
2
|
+
|
|
3
|
+
## Metadata
|
|
4
|
+
|
|
5
|
+
| Field | Value |
|
|
6
|
+
|-------|-------|
|
|
7
|
+
| **ID** | `omp-plan` |
|
|
8
|
+
| **Keywords** | `plan:`, `/plan` |
|
|
9
|
+
| **Tier** | Execution Mode |
|
|
10
|
+
| **Source** | `src/skills/omp-plan.mts` |
|
|
11
|
+
|
|
12
|
+
## Description
|
|
13
|
+
|
|
14
|
+
Strategic planning mode with optional interview workflow. Delays implementation until plan is approved.
|
|
15
|
+
|
|
16
|
+
## Interface
|
|
17
|
+
|
|
18
|
+
```typescript
|
|
19
|
+
interface SkillInput {
|
|
20
|
+
trigger: string;
|
|
21
|
+
args: string[];
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
interface SkillOutput {
|
|
25
|
+
status: "ok" | "error";
|
|
26
|
+
message: string;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
export async function activate(input: SkillInput): Promise<SkillOutput>
|
|
30
|
+
export function deactivate(): void
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
## Implementation
|
|
34
|
+
|
|
35
|
+
Activates the `plan` strategic planning mode by spawning `bin/omp.mjs plan [args]`. No persistent resources are maintained.
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
# Skill: OMP-Setup
|
|
2
|
+
|
|
3
|
+
## Metadata
|
|
4
|
+
|
|
5
|
+
| Field | Value |
|
|
6
|
+
|-------|-------|
|
|
7
|
+
| **ID** | `omp-setup` |
|
|
8
|
+
| **Keywords** | `setup:`, `/setup` |
|
|
9
|
+
| **Tier** | Developer Tool |
|
|
10
|
+
| **Source** | `src/skills/omp-setup.mts` |
|
|
11
|
+
|
|
12
|
+
## Description
|
|
13
|
+
|
|
14
|
+
Orchestrates the OMP setup wizard:
|
|
15
|
+
- Phase 1: Base OMP setup (directory structure, first-run guidance)
|
|
16
|
+
- Phase 2: MCP server configuration
|
|
17
|
+
|
|
18
|
+
## Interface
|
|
19
|
+
|
|
20
|
+
```typescript
|
|
21
|
+
interface SkillInput {
|
|
22
|
+
trigger: string;
|
|
23
|
+
args: string[];
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
interface SkillOutput {
|
|
27
|
+
status: "ok" | "error";
|
|
28
|
+
message: string;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
export async function activate(input: SkillInput): Promise<SkillOutput>
|
|
32
|
+
export function deactivate(): void
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
## Implementation
|
|
36
|
+
|
|
37
|
+
Spawns `bin/omp.mjs setup [args]`. No persistent resources are maintained.
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# Skill: Pipeline
|
|
2
|
+
|
|
3
|
+
## Metadata
|
|
4
|
+
|
|
5
|
+
| Field | Value |
|
|
6
|
+
|-------|-------|
|
|
7
|
+
| **ID** | `pipeline` |
|
|
8
|
+
| **Keywords** | `pipeline:`, `/pipeline` |
|
|
9
|
+
| **Tier** | Execution Mode |
|
|
10
|
+
| **Source** | `src/skills/pipeline.mts` |
|
|
11
|
+
|
|
12
|
+
## Description
|
|
13
|
+
|
|
14
|
+
Sequential pipeline mode. Strict phase ordering enforced: plan → build → test → deploy.
|
|
15
|
+
|
|
16
|
+
## Interface
|
|
17
|
+
|
|
18
|
+
```typescript
|
|
19
|
+
interface SkillInput {
|
|
20
|
+
trigger: string;
|
|
21
|
+
args: string[];
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
interface SkillOutput {
|
|
25
|
+
status: "ok" | "error";
|
|
26
|
+
message: string;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
export async function activate(input: SkillInput): Promise<SkillOutput>
|
|
30
|
+
export function deactivate(): void
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
## Implementation
|
|
34
|
+
|
|
35
|
+
Activates the `pipeline` sequential mode by spawning `bin/omp.mjs pipeline [args]`. No persistent resources are maintained.
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# Skill: PSM
|
|
2
|
+
|
|
3
|
+
## Metadata
|
|
4
|
+
|
|
5
|
+
| Field | Value |
|
|
6
|
+
|-------|-------|
|
|
7
|
+
| **ID** | `psm` |
|
|
8
|
+
| **Keywords** | `psm:`, `/psm` |
|
|
9
|
+
| **Tier** | Developer Tool |
|
|
10
|
+
| **Source** | `src/skills/psm.mts` |
|
|
11
|
+
|
|
12
|
+
## Description
|
|
13
|
+
|
|
14
|
+
Plugin State Manager — inspect, update, and manage OMP session state.
|
|
15
|
+
|
|
16
|
+
## Interface
|
|
17
|
+
|
|
18
|
+
```typescript
|
|
19
|
+
interface SkillInput {
|
|
20
|
+
trigger: string;
|
|
21
|
+
args: string[];
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
interface SkillOutput {
|
|
25
|
+
status: "ok" | "error";
|
|
26
|
+
message: string;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
export async function activate(input: SkillInput): Promise<SkillOutput>
|
|
30
|
+
export function deactivate(): void
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
## Implementation
|
|
34
|
+
|
|
35
|
+
Spawns `bin/omp.mjs psm [args]`. No persistent resources are maintained.
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# Skill: Ralph
|
|
2
|
+
|
|
3
|
+
## Metadata
|
|
4
|
+
|
|
5
|
+
| Field | Value |
|
|
6
|
+
|-------|-------|
|
|
7
|
+
| **ID** | `ralph` |
|
|
8
|
+
| **Keywords** | `ralph:`, `/ralph` |
|
|
9
|
+
| **Tier** | Execution Mode |
|
|
10
|
+
| **Source** | `src/skills/ralph.mts` |
|
|
11
|
+
|
|
12
|
+
## Description
|
|
13
|
+
|
|
14
|
+
Self-referential loop: plan → execute → verify → repeat until task marked done. Configurable verification reviewer.
|
|
15
|
+
|
|
16
|
+
## Interface
|
|
17
|
+
|
|
18
|
+
```typescript
|
|
19
|
+
interface SkillInput {
|
|
20
|
+
trigger: string;
|
|
21
|
+
args: string[];
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
interface SkillOutput {
|
|
25
|
+
status: "ok" | "error";
|
|
26
|
+
message: string;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
export async function activate(input: SkillInput): Promise<SkillOutput>
|
|
30
|
+
export function deactivate(): void
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
## Implementation
|
|
34
|
+
|
|
35
|
+
Activates the `ralph` self-verification loop by spawning `bin/omp.mjs ralph [args]`. No persistent resources are maintained.
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# Skill: Release
|
|
2
|
+
|
|
3
|
+
## Metadata
|
|
4
|
+
|
|
5
|
+
| Field | Value |
|
|
6
|
+
|-------|-------|
|
|
7
|
+
| **ID** | `release` |
|
|
8
|
+
| **Keywords** | `release:`, `/release` |
|
|
9
|
+
| **Tier** | Developer Tool |
|
|
10
|
+
| **Source** | `src/skills/release.mts` |
|
|
11
|
+
|
|
12
|
+
## Description
|
|
13
|
+
|
|
14
|
+
Automated release workflow for OMP.
|
|
15
|
+
|
|
16
|
+
## Interface
|
|
17
|
+
|
|
18
|
+
```typescript
|
|
19
|
+
interface SkillInput {
|
|
20
|
+
trigger: string;
|
|
21
|
+
args: string[];
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
interface SkillOutput {
|
|
25
|
+
status: "ok" | "error";
|
|
26
|
+
message: string;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
export async function activate(input: SkillInput): Promise<SkillOutput>
|
|
30
|
+
export function deactivate(): void
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
## Implementation
|
|
34
|
+
|
|
35
|
+
Spawns `bin/omp.mjs release [args]`. No persistent resources are maintained.
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# Skill: Setup
|
|
2
|
+
|
|
3
|
+
## Metadata
|
|
4
|
+
|
|
5
|
+
| Field | Value |
|
|
6
|
+
|-------|-------|
|
|
7
|
+
| **ID** | `setup` |
|
|
8
|
+
| **Keywords** | `setup:`, `/setup` |
|
|
9
|
+
| **Tier** | Developer Tool |
|
|
10
|
+
| **Source** | `src/skills/setup.mts` |
|
|
11
|
+
|
|
12
|
+
## Description
|
|
13
|
+
|
|
14
|
+
Orchestrates both phases of the OMP setup wizard:
|
|
15
|
+
- Phase 1: Base OMP setup (SQLite DB, directory structure, first-run guidance)
|
|
16
|
+
- Phase 2: MCP server configuration (via `mcp-setup` skill)
|
|
17
|
+
|
|
18
|
+
For MCP-only setup, use the `mcp-setup` skill instead.
|
|
19
|
+
|
|
20
|
+
## Interface
|
|
21
|
+
|
|
22
|
+
```typescript
|
|
23
|
+
interface SkillInput {
|
|
24
|
+
trigger: string;
|
|
25
|
+
args: string[];
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
interface SkillOutput {
|
|
29
|
+
status: "ok" | "error";
|
|
30
|
+
message: string;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
export async function activate(input: SkillInput): Promise<SkillOutput>
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
## Implementation
|
|
37
|
+
|
|
38
|
+
Spawns `node bin/omp.mjs setup [args]` with optional flags:
|
|
39
|
+
- `--mcp-only`: Skip to MCP configuration only
|
|
40
|
+
- `--skip-mcp`: Skip MCP configuration
|
|
41
|
+
- `--non-interactive`: Run without user prompts
|
|
42
|
+
|
|
43
|
+
No persistent resources are maintained.
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
# Skill: Spending
|
|
2
|
+
|
|
3
|
+
## Metadata
|
|
4
|
+
|
|
5
|
+
| Field | Value |
|
|
6
|
+
|-------|-------|
|
|
7
|
+
| **ID** | `spending` |
|
|
8
|
+
| **Keywords** | `spending:`, `/spending`, `/omp:spending` |
|
|
9
|
+
| **Tier** | user |
|
|
10
|
+
| **Source** | `src/skills/spending.mts` |
|
|
11
|
+
|
|
12
|
+
## Description
|
|
13
|
+
|
|
14
|
+
Inspect and manage OMP premium request usage across sessions and months. Track API request consumption against plan limits with monthly and session-level granularity and configurable warning thresholds.
|
|
15
|
+
|
|
16
|
+
## Interface
|
|
17
|
+
|
|
18
|
+
```typescript
|
|
19
|
+
interface SkillInput {
|
|
20
|
+
action: 'status' | 'reset';
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
interface SkillOutput {
|
|
24
|
+
status: "ok" | "error";
|
|
25
|
+
message: string;
|
|
26
|
+
data?: {
|
|
27
|
+
session: number;
|
|
28
|
+
monthly: number;
|
|
29
|
+
monthlyLimit: number;
|
|
30
|
+
monthlyPercentage: number;
|
|
31
|
+
plan: string;
|
|
32
|
+
month: string;
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
## Implementation
|
|
38
|
+
|
|
39
|
+
Reads and updates spending state from `~/.omp/state/spending-monthly.json`. Tracks session and monthly premium request counts. Automatically resets monthly counter when the calendar month changes and session counter when the session ID changes. Resolves configuration from local > global > hardcoded defaults.
|
|
40
|
+
|
|
41
|
+
## Actions
|
|
42
|
+
|
|
43
|
+
### status (default)
|
|
44
|
+
Show current session and monthly premium request counts.
|
|
45
|
+
|
|
46
|
+
```
|
|
47
|
+
spending: status
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
Output:
|
|
51
|
+
```
|
|
52
|
+
Spending status (2025-04):
|
|
53
|
+
Session: 12 requests
|
|
54
|
+
Monthly: 234 / 300 (78%)
|
|
55
|
+
Plan: pro
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
### reset
|
|
59
|
+
Reset the monthly counter by removing the spending state file.
|
|
60
|
+
The counter will reinitialize on next request.
|
|
61
|
+
|
|
62
|
+
```
|
|
63
|
+
spending: reset
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
## Configuration
|
|
67
|
+
|
|
68
|
+
Add to `.omp/config.json` or `~/.omp/config.json`:
|
|
69
|
+
|
|
70
|
+
```json
|
|
71
|
+
{
|
|
72
|
+
"spending": {
|
|
73
|
+
"plan": "pro_plus",
|
|
74
|
+
"premiumRequestsIncluded": 1500,
|
|
75
|
+
"warningThresholdPct": 80
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
Resolution: local > global > hardcoded defaults (`pro`, 300 requests, 80% warning).
|
|
81
|
+
|
|
82
|
+
## State
|
|
83
|
+
|
|
84
|
+
Spending state is persisted to `~/.omp/state/spending-monthly.json`.
|
|
85
|
+
Monthly counter resets automatically when the calendar month changes.
|
|
86
|
+
Session counter resets when the session ID changes.
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# Skill: Swarm
|
|
2
|
+
|
|
3
|
+
## Metadata
|
|
4
|
+
|
|
5
|
+
| Field | Value |
|
|
6
|
+
|-------|-------|
|
|
7
|
+
| **ID** | `swarm` |
|
|
8
|
+
| **Keywords** | `swarm:`, `/swarm` |
|
|
9
|
+
| **Tier** | Execution Mode |
|
|
10
|
+
| **Source** | `src/skills/swarm.mts` |
|
|
11
|
+
|
|
12
|
+
## Description
|
|
13
|
+
|
|
14
|
+
Swarm orchestration with shared state. Multiple agents work on sub-problems simultaneously.
|
|
15
|
+
|
|
16
|
+
## Interface
|
|
17
|
+
|
|
18
|
+
```typescript
|
|
19
|
+
interface SkillInput {
|
|
20
|
+
trigger: string;
|
|
21
|
+
args: string[];
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
interface SkillOutput {
|
|
25
|
+
status: "ok" | "error";
|
|
26
|
+
message: string;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
export async function activate(input: SkillInput): Promise<SkillOutput>
|
|
30
|
+
export function deactivate(): void
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
## Implementation
|
|
34
|
+
|
|
35
|
+
Activates the `swarm` shared-state orchestration by spawning `bin/omp.mjs swarm [args]`. No persistent resources are maintained.
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# Skill: SWE-Bench
|
|
2
|
+
|
|
3
|
+
## Metadata
|
|
4
|
+
|
|
5
|
+
| Field | Value |
|
|
6
|
+
|-------|-------|
|
|
7
|
+
| **ID** | `swe-bench` |
|
|
8
|
+
| **Keywords** | `swe-bench:`, `/swe-bench` |
|
|
9
|
+
| **Tier** | Developer Tool |
|
|
10
|
+
| **Source** | `src/skills/swe-bench.mts` |
|
|
11
|
+
|
|
12
|
+
## Description
|
|
13
|
+
|
|
14
|
+
SWE-bench integration for OMP — run and evaluate SWE-bench test cases.
|
|
15
|
+
|
|
16
|
+
## Interface
|
|
17
|
+
|
|
18
|
+
```typescript
|
|
19
|
+
interface SkillInput {
|
|
20
|
+
trigger: string;
|
|
21
|
+
args: string[];
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
interface SkillOutput {
|
|
25
|
+
status: "ok" | "error";
|
|
26
|
+
message: string;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
export async function activate(input: SkillInput): Promise<SkillOutput>
|
|
30
|
+
export function deactivate(): void
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
## Implementation
|
|
34
|
+
|
|
35
|
+
Spawns `bin/omp.mjs swe-bench [args]`. No persistent resources are maintained.
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# Skill: Team
|
|
2
|
+
|
|
3
|
+
## Metadata
|
|
4
|
+
|
|
5
|
+
| Field | Value |
|
|
6
|
+
|-------|-------|
|
|
7
|
+
| **ID** | `team` |
|
|
8
|
+
| **Keywords** | `team:`, `/team` |
|
|
9
|
+
| **Tier** | Execution Mode |
|
|
10
|
+
| **Source** | `src/skills/team.mts` |
|
|
11
|
+
|
|
12
|
+
## Description
|
|
13
|
+
|
|
14
|
+
Coordinated multi-agent session on a shared task list. Agents communicate via SendMessage.
|
|
15
|
+
|
|
16
|
+
## Interface
|
|
17
|
+
|
|
18
|
+
```typescript
|
|
19
|
+
interface SkillInput {
|
|
20
|
+
trigger: string;
|
|
21
|
+
args: string[];
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
interface SkillOutput {
|
|
25
|
+
status: "ok" | "error";
|
|
26
|
+
message: string;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
export async function activate(input: SkillInput): Promise<SkillOutput>
|
|
30
|
+
export function deactivate(): void
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
## Implementation
|
|
34
|
+
|
|
35
|
+
Activates the `team` multi-agent coordination mode by spawning `bin/omp.mjs team [args]`. No persistent resources are maintained.
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# Skill: Trace
|
|
2
|
+
|
|
3
|
+
## Metadata
|
|
4
|
+
|
|
5
|
+
| Field | Value |
|
|
6
|
+
|-------|-------|
|
|
7
|
+
| **ID** | `trace` |
|
|
8
|
+
| **Keywords** | `trace:`, `/trace` |
|
|
9
|
+
| **Tier** | Planning Tool |
|
|
10
|
+
| **Source** | `src/skills/trace.mts` |
|
|
11
|
+
|
|
12
|
+
## Description
|
|
13
|
+
|
|
14
|
+
Evidence-driven tracing lane orchestrating competing tracer hypotheses in Claude built-in team mode.
|
|
15
|
+
|
|
16
|
+
## Interface
|
|
17
|
+
|
|
18
|
+
```typescript
|
|
19
|
+
interface SkillInput {
|
|
20
|
+
trigger: string;
|
|
21
|
+
args: string[];
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
interface SkillOutput {
|
|
25
|
+
status: "ok" | "error";
|
|
26
|
+
message: string;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
export async function activate(input: SkillInput): Promise<SkillOutput>
|
|
30
|
+
export function deactivate(): void
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
## Implementation
|
|
34
|
+
|
|
35
|
+
Spawns `bin/omp.mjs trace [args]`. No persistent resources are maintained.
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# Skill: Ultrawork
|
|
2
|
+
|
|
3
|
+
## Metadata
|
|
4
|
+
|
|
5
|
+
| Field | Value |
|
|
6
|
+
|-------|-------|
|
|
7
|
+
| **ID** | `ultrawork` |
|
|
8
|
+
| **Keywords** | `ulw:`, `/ulw`, `ultrawork:` |
|
|
9
|
+
| **Tier** | Execution Mode |
|
|
10
|
+
| **Source** | `src/skills/ultrawork.mts` |
|
|
11
|
+
|
|
12
|
+
## Description
|
|
13
|
+
|
|
14
|
+
Parallel execution engine. Spawns multiple agents simultaneously for high-throughput task completion.
|
|
15
|
+
|
|
16
|
+
## Interface
|
|
17
|
+
|
|
18
|
+
```typescript
|
|
19
|
+
interface SkillInput {
|
|
20
|
+
trigger: string;
|
|
21
|
+
args: string[];
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
interface SkillOutput {
|
|
25
|
+
status: "ok" | "error";
|
|
26
|
+
message: string;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
export async function activate(input: SkillInput): Promise<SkillOutput>
|
|
30
|
+
export function deactivate(): void
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
## Implementation
|
|
34
|
+
|
|
35
|
+
Activates the `ultrawork` parallel execution mode by spawning `bin/omp.mjs ultrawork [args]`. No persistent resources are maintained.
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# Skill: Wiki
|
|
2
|
+
|
|
3
|
+
## Metadata
|
|
4
|
+
|
|
5
|
+
| Field | Value |
|
|
6
|
+
|-------|-------|
|
|
7
|
+
| **ID** | `wiki` |
|
|
8
|
+
| **Keywords** | `wiki:`, `/wiki` |
|
|
9
|
+
| **Tier** | Planning Tool |
|
|
10
|
+
| **Source** | `src/skills/wiki.mts` |
|
|
11
|
+
|
|
12
|
+
## Description
|
|
13
|
+
|
|
14
|
+
LLM Wiki — persistent markdown knowledge base that compounds across sessions.
|
|
15
|
+
|
|
16
|
+
## Interface
|
|
17
|
+
|
|
18
|
+
```typescript
|
|
19
|
+
interface SkillInput {
|
|
20
|
+
trigger: string;
|
|
21
|
+
args: string[];
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
interface SkillOutput {
|
|
25
|
+
status: "ok" | "error";
|
|
26
|
+
message: string;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
export async function activate(input: SkillInput): Promise<SkillOutput>
|
|
30
|
+
export function deactivate(): void
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
## Implementation
|
|
34
|
+
|
|
35
|
+
Spawns `bin/omp.mjs wiki [args]`. No persistent resources are maintained.
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: analyst
|
|
3
|
+
description: Pre-planning consultant for requirements analysis (Opus)
|
|
4
|
+
model: claude-opus-4-6
|
|
5
|
+
level: 3
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
<Agent_Prompt>
|
|
9
|
+
<Role>
|
|
10
|
+
You are Analyst. Your mission is to convert decided product scope into implementable acceptance criteria, catching gaps before planning begins.
|
|
11
|
+
You are responsible for identifying missing questions, undefined guardrails, scope risks, unvalidated assumptions, missing acceptance criteria, and edge cases.
|
|
12
|
+
You are not responsible for market/user-value prioritization, code analysis (architect), plan creation (planner), or plan review (critic).
|
|
13
|
+
</Role>
|
|
14
|
+
|
|
15
|
+
<Why_This_Matters>
|
|
16
|
+
Plans built on incomplete requirements produce implementations that miss the target. These rules exist because catching requirement gaps before planning is 100x cheaper than discovering them in production. The analyst prevents the "but I thought you meant..." conversation.
|
|
17
|
+
</Why_This_Matters>
|
|
18
|
+
|
|
19
|
+
<Success_Criteria>
|
|
20
|
+
- All unasked questions identified with explanation of why they matter
|
|
21
|
+
- Guardrails defined with concrete suggested bounds
|
|
22
|
+
- Scope creep areas identified with prevention strategies
|
|
23
|
+
- Each assumption listed with a validation method
|
|
24
|
+
- Acceptance criteria are testable (pass/fail, not subjective)
|
|
25
|
+
</Success_Criteria>
|
|
26
|
+
|
|
27
|
+
<Constraints>
|
|
28
|
+
- Read-only: Write and Edit tools are blocked.
|
|
29
|
+
- Focus on implementability, not market strategy. "Is this requirement testable?" not "Is this feature valuable?"
|
|
30
|
+
- When receiving a task FROM architect, proceed with best-effort analysis and note code context gaps in output (do not hand back).
|
|
31
|
+
- Hand off to: planner (requirements gathered), architect (code analysis needed), critic (plan exists and needs review).
|
|
32
|
+
</Constraints>
|
|
33
|
+
|
|
34
|
+
<Investigation_Protocol>
|
|
35
|
+
1) Parse the request/session to extract stated requirements.
|
|
36
|
+
2) For each requirement, ask: Is it complete? Testable? Unambiguous?
|
|
37
|
+
3) Identify assumptions being made without validation.
|
|
38
|
+
4) Define scope boundaries: what is included, what is explicitly excluded.
|
|
39
|
+
5) Check dependencies: what must exist before work starts?
|
|
40
|
+
6) Enumerate edge cases: unusual inputs, states, timing conditions.
|
|
41
|
+
7) Prioritize findings: critical gaps first, nice-to-haves last.
|
|
42
|
+
</Investigation_Protocol>
|
|
43
|
+
|
|
44
|
+
<Tool_Usage>
|
|
45
|
+
- Use Read to examine any referenced documents or specifications.
|
|
46
|
+
- Use Grep/Glob to verify that referenced components or patterns exist in the codebase.
|
|
47
|
+
</Tool_Usage>
|
|
48
|
+
|
|
49
|
+
<Execution_Policy>
|
|
50
|
+
- Default effort: high (thorough gap analysis).
|
|
51
|
+
- Stop when all requirement categories have been evaluated and findings are prioritized.
|
|
52
|
+
</Execution_Policy>
|
|
53
|
+
|
|
54
|
+
<Output_Format>
|
|
55
|
+
## Analyst Review: [Topic]
|
|
56
|
+
|
|
57
|
+
### Missing Questions
|
|
58
|
+
1. [Question not asked] - [Why it matters]
|
|
59
|
+
|
|
60
|
+
### Undefined Guardrails
|
|
61
|
+
1. [What needs bounds] - [Suggested definition]
|
|
62
|
+
|
|
63
|
+
### Scope Risks
|
|
64
|
+
1. [Area prone to creep] - [How to prevent]
|
|
65
|
+
|
|
66
|
+
### Unvalidated Assumptions
|
|
67
|
+
1. [Assumption] - [How to validate]
|
|
68
|
+
|
|
69
|
+
### Missing Acceptance Criteria
|
|
70
|
+
1. [What success looks like] - [Measurable criterion]
|
|
71
|
+
|
|
72
|
+
### Edge Cases
|
|
73
|
+
1. [Unusual scenario] - [How to handle]
|
|
74
|
+
|
|
75
|
+
### Recommendations
|
|
76
|
+
- [Prioritized list of things to clarify before planning]
|
|
77
|
+
|
|
78
|
+
### Open Questions
|
|
79
|
+
- [ ] [Question or decision needed] — [Why it matters]
|
|
80
|
+
</Output_Format>
|
|
81
|
+
|
|
82
|
+
<Failure_Modes_To_Avoid>
|
|
83
|
+
- Market analysis: Evaluating "should we build this?" instead of "can we build this clearly?"
|
|
84
|
+
- Vague findings: "The requirements are unclear." Instead: "The error handling for `createUser()` when email already exists is unspecified. Should it return 409 Conflict or silently update?"
|
|
85
|
+
- Over-analysis: Finding 50 edge cases for a simple feature. Prioritize by impact and likelihood.
|
|
86
|
+
- Missing the obvious: Catching subtle edge cases but missing that the core happy path is undefined.
|
|
87
|
+
- Circular handoff: Receiving work from architect, then handing it back to architect. Process it and note gaps.
|
|
88
|
+
</Failure_Modes_To_Avoid>
|
|
89
|
+
|
|
90
|
+
<Examples>
|
|
91
|
+
<Good>Request: "Add user deletion." Analyst identifies: no specification for soft vs hard delete, no mention of cascade behavior for user's posts, no retention policy for data, no specification for what happens to active sessions. Each gap has a suggested resolution.</Good>
|
|
92
|
+
<Bad>Request: "Add user deletion." Analyst says: "Consider the implications of user deletion on the system." This is vague and not actionable.</Bad>
|
|
93
|
+
</Examples>
|
|
94
|
+
|
|
95
|
+
<Final_Checklist>
|
|
96
|
+
- Did I check each requirement for completeness and testability?
|
|
97
|
+
- Are my findings specific with suggested resolutions?
|
|
98
|
+
- Did I prioritize critical gaps over nice-to-haves?
|
|
99
|
+
- Are acceptance criteria measurable (pass/fail)?
|
|
100
|
+
- Did I avoid market/value judgment (stayed in implementability)?
|
|
101
|
+
- Are open questions included in the response output under `### Open Questions`?
|
|
102
|
+
</Final_Checklist>
|
|
103
|
+
</Agent_Prompt>
|