@slope-dev/slope 1.55.11 → 1.56.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/atomic-write.d.ts +9 -0
- package/dist/cli/atomic-write.d.ts.map +1 -0
- package/dist/cli/atomic-write.js +89 -0
- package/dist/cli/atomic-write.js.map +1 -0
- package/dist/cli/commands/auto-card.d.ts.map +1 -1
- package/dist/cli/commands/auto-card.js +17 -12
- package/dist/cli/commands/auto-card.js.map +1 -1
- package/dist/cli/commands/briefing.d.ts.map +1 -1
- package/dist/cli/commands/briefing.js +21 -3
- package/dist/cli/commands/briefing.js.map +1 -1
- package/dist/cli/commands/claim.d.ts.map +1 -1
- package/dist/cli/commands/claim.js +31 -3
- package/dist/cli/commands/claim.js.map +1 -1
- package/dist/cli/commands/doctor.d.ts.map +1 -1
- package/dist/cli/commands/doctor.js +32 -11
- package/dist/cli/commands/doctor.js.map +1 -1
- package/dist/cli/commands/guard.d.ts.map +1 -1
- package/dist/cli/commands/guard.js +14 -0
- package/dist/cli/commands/guard.js.map +1 -1
- package/dist/cli/commands/init.d.ts +1 -0
- package/dist/cli/commands/init.d.ts.map +1 -1
- package/dist/cli/commands/init.js +189 -13
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/commands/next.d.ts.map +1 -1
- package/dist/cli/commands/next.js +3 -2
- package/dist/cli/commands/next.js.map +1 -1
- package/dist/cli/commands/pr.d.ts.map +1 -1
- package/dist/cli/commands/pr.js +27 -0
- package/dist/cli/commands/pr.js.map +1 -1
- package/dist/cli/commands/review-state.d.ts +2 -0
- package/dist/cli/commands/review-state.d.ts.map +1 -1
- package/dist/cli/commands/review-state.js +28 -11
- package/dist/cli/commands/review-state.js.map +1 -1
- package/dist/cli/commands/review.d.ts.map +1 -1
- package/dist/cli/commands/review.js +7 -6
- package/dist/cli/commands/review.js.map +1 -1
- package/dist/cli/commands/roadmap.d.ts.map +1 -1
- package/dist/cli/commands/roadmap.js +20 -5
- package/dist/cli/commands/roadmap.js.map +1 -1
- package/dist/cli/commands/skills.d.ts +2 -0
- package/dist/cli/commands/skills.d.ts.map +1 -0
- package/dist/cli/commands/skills.js +124 -0
- package/dist/cli/commands/skills.js.map +1 -0
- package/dist/cli/commands/sprint-plan.js +8 -8
- package/dist/cli/commands/sprint-plan.js.map +1 -1
- package/dist/cli/commands/sprint.d.ts.map +1 -1
- package/dist/cli/commands/sprint.js +111 -25
- package/dist/cli/commands/sprint.js.map +1 -1
- package/dist/cli/commands/store.d.ts +1 -0
- package/dist/cli/commands/store.d.ts.map +1 -1
- package/dist/cli/commands/store.js +72 -5
- package/dist/cli/commands/store.js.map +1 -1
- package/dist/cli/commands/validate.d.ts +1 -1
- package/dist/cli/commands/validate.d.ts.map +1 -1
- package/dist/cli/commands/validate.js +31 -10
- package/dist/cli/commands/validate.js.map +1 -1
- package/dist/cli/commands/worktree.d.ts.map +1 -1
- package/dist/cli/commands/worktree.js +203 -8
- package/dist/cli/commands/worktree.js.map +1 -1
- package/dist/cli/guards/claim-required.d.ts.map +1 -1
- package/dist/cli/guards/claim-required.js +23 -25
- package/dist/cli/guards/claim-required.js.map +1 -1
- package/dist/cli/guards/docs.js +2 -2
- package/dist/cli/guards/docs.js.map +1 -1
- package/dist/cli/guards/hazard.d.ts.map +1 -1
- package/dist/cli/guards/hazard.js +148 -52
- package/dist/cli/guards/hazard.js.map +1 -1
- package/dist/cli/guards/hook-input.d.ts +15 -0
- package/dist/cli/guards/hook-input.d.ts.map +1 -0
- package/dist/cli/guards/hook-input.js +89 -0
- package/dist/cli/guards/hook-input.js.map +1 -0
- package/dist/cli/guards/pr-review.d.ts.map +1 -1
- package/dist/cli/guards/pr-review.js +3 -2
- package/dist/cli/guards/pr-review.js.map +1 -1
- package/dist/cli/guards/roadmap-edit-shipped.d.ts.map +1 -1
- package/dist/cli/guards/roadmap-edit-shipped.js +109 -16
- package/dist/cli/guards/roadmap-edit-shipped.js.map +1 -1
- package/dist/cli/guards/scope-drift.d.ts.map +1 -1
- package/dist/cli/guards/scope-drift.js +25 -15
- package/dist/cli/guards/scope-drift.js.map +1 -1
- package/dist/cli/guards/session-briefing.d.ts.map +1 -1
- package/dist/cli/guards/session-briefing.js +10 -6
- package/dist/cli/guards/session-briefing.js.map +1 -1
- package/dist/cli/guards/sprint-completion.js +10 -4
- package/dist/cli/guards/sprint-completion.js.map +1 -1
- package/dist/cli/guards/workflow-gate.js +6 -5
- package/dist/cli/guards/workflow-gate.js.map +1 -1
- package/dist/cli/guards/worktree-check.js +1 -1
- package/dist/cli/guards/worktree-check.js.map +1 -1
- package/dist/cli/index.js +14 -5
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/registry.d.ts.map +1 -1
- package/dist/cli/registry.js +20 -1
- package/dist/cli/registry.js.map +1 -1
- package/dist/cli/session-state.d.ts +1 -1
- package/dist/cli/session-state.d.ts.map +1 -1
- package/dist/cli/session-state.js +76 -57
- package/dist/cli/session-state.js.map +1 -1
- package/dist/cli/sprint-inference.d.ts.map +1 -1
- package/dist/cli/sprint-inference.js +2 -2
- package/dist/cli/sprint-inference.js.map +1 -1
- package/dist/cli/sprint-state.d.ts +3 -1
- package/dist/cli/sprint-state.d.ts.map +1 -1
- package/dist/cli/sprint-state.js +41 -25
- package/dist/cli/sprint-state.js.map +1 -1
- package/dist/core/analytics.d.ts +2 -1
- package/dist/core/analytics.d.ts.map +1 -1
- package/dist/core/analytics.js +25 -2
- package/dist/core/analytics.js.map +1 -1
- package/dist/core/analyzers/git.d.ts +3 -1
- package/dist/core/analyzers/git.d.ts.map +1 -1
- package/dist/core/analyzers/git.js +4 -2
- package/dist/core/analyzers/git.js.map +1 -1
- package/dist/core/briefing.d.ts +30 -0
- package/dist/core/briefing.d.ts.map +1 -1
- package/dist/core/briefing.js +272 -1
- package/dist/core/briefing.js.map +1 -1
- package/dist/core/builder.d.ts +5 -0
- package/dist/core/builder.d.ts.map +1 -1
- package/dist/core/builder.js +5 -0
- package/dist/core/builder.js.map +1 -1
- package/dist/core/config.d.ts +2 -0
- package/dist/core/config.d.ts.map +1 -1
- package/dist/core/config.js +1 -0
- package/dist/core/config.js.map +1 -1
- package/dist/core/guard.d.ts +4 -0
- package/dist/core/guard.d.ts.map +1 -1
- package/dist/core/guard.js.map +1 -1
- package/dist/core/index.d.ts +6 -4
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +4 -2
- package/dist/core/index.js.map +1 -1
- package/dist/core/loader.js +2 -2
- package/dist/core/loader.js.map +1 -1
- package/dist/core/roadmap.d.ts +7 -3
- package/dist/core/roadmap.d.ts.map +1 -1
- package/dist/core/roadmap.js +37 -4
- package/dist/core/roadmap.js.map +1 -1
- package/dist/core/skills.d.ts +59 -0
- package/dist/core/skills.d.ts.map +1 -0
- package/dist/core/skills.js +333 -0
- package/dist/core/skills.js.map +1 -0
- package/dist/core/types.d.ts +10 -0
- package/dist/core/types.d.ts.map +1 -1
- package/dist/core/validation.d.ts +4 -1
- package/dist/core/validation.d.ts.map +1 -1
- package/dist/core/validation.js +51 -1
- package/dist/core/validation.js.map +1 -1
- package/dist/mcp/index.d.ts +2 -0
- package/dist/mcp/index.d.ts.map +1 -1
- package/dist/mcp/index.js +13 -8
- package/dist/mcp/index.js.map +1 -1
- package/dist/mcp/registry.d.ts +1 -0
- package/dist/mcp/registry.d.ts.map +1 -1
- package/dist/mcp/registry.js +20 -10
- package/dist/mcp/registry.js.map +1 -1
- package/dist/store/index.d.ts.map +1 -1
- package/dist/store/index.js +5 -1
- package/dist/store/index.js.map +1 -1
- package/dist/store/sqlite-memory-backend.d.ts.map +1 -1
- package/dist/store/sqlite-memory-backend.js +6 -1
- package/dist/store/sqlite-memory-backend.js.map +1 -1
- package/package.json +1 -1
- package/templates/codex/plugins/slope/.codex-plugin/plugin.json +10 -7
- package/templates/codex/plugins/slope/.mcp.json +8 -0
- package/templates/codex/plugins/slope/hooks/slope-guard.sh +3 -1
- package/templates/codex/plugins/slope/hooks.json +211 -10
- package/templates/codex/plugins/slope/skills/slope-guard-warning/SKILL.md +28 -0
- package/templates/codex/plugins/slope/skills/slope-setup/SKILL.md +29 -0
- package/templates/codex/plugins/slope/skills/slope-sprint/SKILL.md +34 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sqlite-memory-backend.js","sourceRoot":"","sources":["../../src/store/sqlite-memory-backend.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC/D,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,
|
|
1
|
+
{"version":3,"file":"sqlite-memory-backend.js","sourceRoot":"","sources":["../../src/store/sqlite-memory-backend.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@slope-dev/slope",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.56.0",
|
|
4
4
|
"description": "Quantified sprint metrics for AI-assisted development. Scorecards, handicap tracking, and real-time agent guidance for Claude Code, Cursor, Windsurf, Cline, and OpenCode.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "slope",
|
|
3
|
-
"version": "1.
|
|
4
|
-
"description": "SLOPE sprint tracking, guard
|
|
3
|
+
"version": "1.56.0",
|
|
4
|
+
"description": "SLOPE sprint tracking, guard hooks, and Codex workflow skills.",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "SLOPE",
|
|
7
7
|
"email": "support@example.com",
|
|
@@ -16,24 +16,27 @@
|
|
|
16
16
|
"codex",
|
|
17
17
|
"hooks"
|
|
18
18
|
],
|
|
19
|
+
"skills": "./skills/",
|
|
19
20
|
"hooks": "./hooks.json",
|
|
21
|
+
"mcpServers": "./.mcp.json",
|
|
20
22
|
"interface": {
|
|
21
23
|
"displayName": "SLOPE",
|
|
22
|
-
"shortDescription": "Sprint tracking and
|
|
23
|
-
"longDescription": "
|
|
24
|
+
"shortDescription": "Sprint tracking, guard hooks, and workflow skills for Codex.",
|
|
25
|
+
"longDescription": "Packages SLOPE's Codex-facing adapter boundary: guard hook metadata, a dispatcher over the SLOPE CLI, MCP server metadata, and skills for sprint setup, closeout, and guard-warning handling. Runtime guard execution uses user or project hooks.json shims until Codex plugin_hooks is stable.",
|
|
24
26
|
"developerName": "SLOPE",
|
|
25
27
|
"category": "Productivity",
|
|
26
28
|
"capabilities": [
|
|
27
29
|
"Hooks",
|
|
30
|
+
"Skills",
|
|
28
31
|
"MCP"
|
|
29
32
|
],
|
|
30
33
|
"websiteURL": "https://github.com/srbryers/slope",
|
|
31
34
|
"privacyPolicyURL": "https://github.com/srbryers/slope",
|
|
32
35
|
"termsOfServiceURL": "https://github.com/srbryers/slope",
|
|
33
36
|
"defaultPrompt": [
|
|
34
|
-
"
|
|
35
|
-
"
|
|
36
|
-
"
|
|
37
|
+
"Set up SLOPE for this repo from Codex.",
|
|
38
|
+
"Start or inspect the current SLOPE sprint.",
|
|
39
|
+
"Close out the sprint with validation and review."
|
|
37
40
|
],
|
|
38
41
|
"brandColor": "#2F6F5E"
|
|
39
42
|
}
|
|
@@ -12,10 +12,12 @@ fi
|
|
|
12
12
|
|
|
13
13
|
if [ -x "$SLOPE_PROJECT_DIR/node_modules/.bin/slope" ]; then
|
|
14
14
|
SLOPE_BIN="$SLOPE_PROJECT_DIR/node_modules/.bin/slope"
|
|
15
|
+
elif [ -f "$SLOPE_PROJECT_DIR/dist/cli/index.js" ] && [ -f "$SLOPE_PROJECT_DIR/package.json" ] && grep -q '"name": "@slope-dev/slope"' "$SLOPE_PROJECT_DIR/package.json"; then
|
|
16
|
+
exec node "$SLOPE_PROJECT_DIR/dist/cli/index.js" guard "$@"
|
|
15
17
|
elif command -v slope >/dev/null 2>&1; then
|
|
16
18
|
SLOPE_BIN="$(command -v slope)"
|
|
17
19
|
else
|
|
18
|
-
|
|
20
|
+
SLOPE_BIN="npx --yes @slope-dev/slope"
|
|
19
21
|
fi
|
|
20
22
|
|
|
21
23
|
cd "$SLOPE_PROJECT_DIR"
|
|
@@ -1,29 +1,206 @@
|
|
|
1
1
|
{
|
|
2
2
|
"slopePluginHooksStatus": "metadata-only",
|
|
3
|
-
"note": "Codex
|
|
3
|
+
"note": "Codex plugin_hooks is under development. Use user or project hooks.json shims for active SLOPE guards until plugin hook loading is stable.",
|
|
4
4
|
"hooks": {
|
|
5
5
|
"PreToolUse": [
|
|
6
6
|
{
|
|
7
|
-
"matcher": "Bash",
|
|
8
7
|
"hooks": [
|
|
9
8
|
{
|
|
10
9
|
"type": "command",
|
|
11
|
-
"command": "./hooks/slope-guard.sh
|
|
10
|
+
"command": "\"./hooks/slope-guard.sh\" explore",
|
|
12
11
|
"timeout": 10,
|
|
13
|
-
"statusMessage": "SLOPE
|
|
12
|
+
"statusMessage": "SLOPE explore"
|
|
14
13
|
}
|
|
15
|
-
]
|
|
14
|
+
],
|
|
15
|
+
"matcher": "mcp__.*__read.*|mcp__.*__glob.*|mcp__.*__list.*|mcp__.*__search.*|mcp__.*__grep.*|apply_patch|Edit|Write"
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
"hooks": [
|
|
19
|
+
{
|
|
20
|
+
"type": "command",
|
|
21
|
+
"command": "\"./hooks/slope-guard.sh\" hazard",
|
|
22
|
+
"timeout": 10,
|
|
23
|
+
"statusMessage": "SLOPE hazard"
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
"type": "command",
|
|
27
|
+
"command": "\"./hooks/slope-guard.sh\" scope-drift",
|
|
28
|
+
"timeout": 10,
|
|
29
|
+
"statusMessage": "SLOPE scope-drift"
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
"type": "command",
|
|
33
|
+
"command": "\"./hooks/slope-guard.sh\" workflow-step-gate",
|
|
34
|
+
"timeout": 10,
|
|
35
|
+
"statusMessage": "SLOPE workflow-step-gate"
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
"type": "command",
|
|
39
|
+
"command": "\"./hooks/slope-guard.sh\" stale-flows",
|
|
40
|
+
"timeout": 10,
|
|
41
|
+
"statusMessage": "SLOPE stale-flows"
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
"type": "command",
|
|
45
|
+
"command": "\"./hooks/slope-guard.sh\" claim-required",
|
|
46
|
+
"timeout": 10,
|
|
47
|
+
"statusMessage": "SLOPE claim-required"
|
|
48
|
+
},
|
|
49
|
+
{
|
|
50
|
+
"type": "command",
|
|
51
|
+
"command": "\"./hooks/slope-guard.sh\" roadmap-edit-shipped",
|
|
52
|
+
"timeout": 10,
|
|
53
|
+
"statusMessage": "SLOPE roadmap-edit-shipped"
|
|
54
|
+
}
|
|
55
|
+
],
|
|
56
|
+
"matcher": "apply_patch|Edit|Write"
|
|
57
|
+
},
|
|
58
|
+
{
|
|
59
|
+
"hooks": [
|
|
60
|
+
{
|
|
61
|
+
"type": "command",
|
|
62
|
+
"command": "\"./hooks/slope-guard.sh\" subagent-gate",
|
|
63
|
+
"timeout": 10,
|
|
64
|
+
"statusMessage": "SLOPE subagent-gate"
|
|
65
|
+
}
|
|
66
|
+
],
|
|
67
|
+
"matcher": "Agent"
|
|
68
|
+
},
|
|
69
|
+
{
|
|
70
|
+
"hooks": [
|
|
71
|
+
{
|
|
72
|
+
"type": "command",
|
|
73
|
+
"command": "\"./hooks/slope-guard.sh\" workflow-gate",
|
|
74
|
+
"timeout": 10,
|
|
75
|
+
"statusMessage": "SLOPE workflow-gate"
|
|
76
|
+
}
|
|
77
|
+
],
|
|
78
|
+
"matcher": "ExitPlanMode"
|
|
79
|
+
},
|
|
80
|
+
{
|
|
81
|
+
"hooks": [
|
|
82
|
+
{
|
|
83
|
+
"type": "command",
|
|
84
|
+
"command": "\"./hooks/slope-guard.sh\" version-check",
|
|
85
|
+
"timeout": 10,
|
|
86
|
+
"statusMessage": "SLOPE version-check"
|
|
87
|
+
},
|
|
88
|
+
{
|
|
89
|
+
"type": "command",
|
|
90
|
+
"command": "\"./hooks/slope-guard.sh\" branch-before-commit",
|
|
91
|
+
"timeout": 10,
|
|
92
|
+
"statusMessage": "SLOPE branch-before-commit"
|
|
93
|
+
},
|
|
94
|
+
{
|
|
95
|
+
"type": "command",
|
|
96
|
+
"command": "\"./hooks/slope-guard.sh\" sprint-completion",
|
|
97
|
+
"timeout": 10,
|
|
98
|
+
"statusMessage": "SLOPE sprint-completion"
|
|
99
|
+
},
|
|
100
|
+
{
|
|
101
|
+
"type": "command",
|
|
102
|
+
"command": "\"./hooks/slope-guard.sh\" worktree-merge",
|
|
103
|
+
"timeout": 10,
|
|
104
|
+
"statusMessage": "SLOPE worktree-merge"
|
|
105
|
+
},
|
|
106
|
+
{
|
|
107
|
+
"type": "command",
|
|
108
|
+
"command": "\"./hooks/slope-guard.sh\" worktree-self-remove",
|
|
109
|
+
"timeout": 10,
|
|
110
|
+
"statusMessage": "SLOPE worktree-self-remove"
|
|
111
|
+
},
|
|
112
|
+
{
|
|
113
|
+
"type": "command",
|
|
114
|
+
"command": "\"./hooks/slope-guard.sh\" phase-boundary",
|
|
115
|
+
"timeout": 10,
|
|
116
|
+
"statusMessage": "SLOPE phase-boundary"
|
|
117
|
+
}
|
|
118
|
+
],
|
|
119
|
+
"matcher": "Bash"
|
|
120
|
+
},
|
|
121
|
+
{
|
|
122
|
+
"hooks": [
|
|
123
|
+
{
|
|
124
|
+
"type": "command",
|
|
125
|
+
"command": "\"./hooks/slope-guard.sh\" worktree-check",
|
|
126
|
+
"timeout": 10,
|
|
127
|
+
"statusMessage": "SLOPE worktree-check"
|
|
128
|
+
}
|
|
129
|
+
],
|
|
130
|
+
"matcher": "apply_patch|Edit|Write|Bash"
|
|
131
|
+
},
|
|
132
|
+
{
|
|
133
|
+
"hooks": [
|
|
134
|
+
{
|
|
135
|
+
"type": "command",
|
|
136
|
+
"command": "\"./hooks/slope-guard.sh\" worktree-reuse",
|
|
137
|
+
"timeout": 10,
|
|
138
|
+
"statusMessage": "SLOPE worktree-reuse"
|
|
139
|
+
}
|
|
140
|
+
],
|
|
141
|
+
"matcher": "EnterWorktree"
|
|
16
142
|
}
|
|
17
143
|
],
|
|
18
144
|
"PostToolUse": [
|
|
19
145
|
{
|
|
20
|
-
"matcher": "Bash",
|
|
21
146
|
"hooks": [
|
|
22
147
|
{
|
|
23
148
|
"type": "command",
|
|
24
|
-
"command": "./hooks/slope-guard.sh commit-nudge",
|
|
149
|
+
"command": "\"./hooks/slope-guard.sh\" commit-nudge",
|
|
25
150
|
"timeout": 10,
|
|
26
|
-
"statusMessage": "SLOPE commit
|
|
151
|
+
"statusMessage": "SLOPE commit-nudge"
|
|
152
|
+
},
|
|
153
|
+
{
|
|
154
|
+
"type": "command",
|
|
155
|
+
"command": "\"./hooks/slope-guard.sh\" review-tier",
|
|
156
|
+
"timeout": 10,
|
|
157
|
+
"statusMessage": "SLOPE review-tier"
|
|
158
|
+
}
|
|
159
|
+
],
|
|
160
|
+
"matcher": "apply_patch|Edit|Write"
|
|
161
|
+
},
|
|
162
|
+
{
|
|
163
|
+
"hooks": [
|
|
164
|
+
{
|
|
165
|
+
"type": "command",
|
|
166
|
+
"command": "\"./hooks/slope-guard.sh\" push-nudge",
|
|
167
|
+
"timeout": 10,
|
|
168
|
+
"statusMessage": "SLOPE push-nudge"
|
|
169
|
+
},
|
|
170
|
+
{
|
|
171
|
+
"type": "command",
|
|
172
|
+
"command": "\"./hooks/slope-guard.sh\" pr-review",
|
|
173
|
+
"timeout": 10,
|
|
174
|
+
"statusMessage": "SLOPE pr-review"
|
|
175
|
+
},
|
|
176
|
+
{
|
|
177
|
+
"type": "command",
|
|
178
|
+
"command": "\"./hooks/slope-guard.sh\" sprint-completion",
|
|
179
|
+
"timeout": 10,
|
|
180
|
+
"statusMessage": "SLOPE sprint-completion"
|
|
181
|
+
},
|
|
182
|
+
{
|
|
183
|
+
"type": "command",
|
|
184
|
+
"command": "\"./hooks/slope-guard.sh\" post-push",
|
|
185
|
+
"timeout": 10,
|
|
186
|
+
"statusMessage": "SLOPE post-push"
|
|
187
|
+
}
|
|
188
|
+
],
|
|
189
|
+
"matcher": "Bash"
|
|
190
|
+
},
|
|
191
|
+
{
|
|
192
|
+
"hooks": [
|
|
193
|
+
{
|
|
194
|
+
"type": "command",
|
|
195
|
+
"command": "\"./hooks/slope-guard.sh\" transcript",
|
|
196
|
+
"timeout": 10,
|
|
197
|
+
"statusMessage": "SLOPE transcript"
|
|
198
|
+
},
|
|
199
|
+
{
|
|
200
|
+
"type": "command",
|
|
201
|
+
"command": "\"./hooks/slope-guard.sh\" session-briefing",
|
|
202
|
+
"timeout": 10,
|
|
203
|
+
"statusMessage": "SLOPE session-briefing"
|
|
27
204
|
}
|
|
28
205
|
]
|
|
29
206
|
}
|
|
@@ -33,9 +210,33 @@
|
|
|
33
210
|
"hooks": [
|
|
34
211
|
{
|
|
35
212
|
"type": "command",
|
|
36
|
-
"command": "./hooks/slope-guard.sh stop-check",
|
|
213
|
+
"command": "\"./hooks/slope-guard.sh\" stop-check",
|
|
214
|
+
"timeout": 10,
|
|
215
|
+
"statusMessage": "SLOPE stop-check"
|
|
216
|
+
},
|
|
217
|
+
{
|
|
218
|
+
"type": "command",
|
|
219
|
+
"command": "\"./hooks/slope-guard.sh\" next-action",
|
|
220
|
+
"timeout": 10,
|
|
221
|
+
"statusMessage": "SLOPE next-action"
|
|
222
|
+
},
|
|
223
|
+
{
|
|
224
|
+
"type": "command",
|
|
225
|
+
"command": "\"./hooks/slope-guard.sh\" sprint-completion",
|
|
226
|
+
"timeout": 10,
|
|
227
|
+
"statusMessage": "SLOPE sprint-completion"
|
|
228
|
+
},
|
|
229
|
+
{
|
|
230
|
+
"type": "command",
|
|
231
|
+
"command": "\"./hooks/slope-guard.sh\" review-stale",
|
|
232
|
+
"timeout": 10,
|
|
233
|
+
"statusMessage": "SLOPE review-stale"
|
|
234
|
+
},
|
|
235
|
+
{
|
|
236
|
+
"type": "command",
|
|
237
|
+
"command": "\"./hooks/slope-guard.sh\" post-hole-enforcement",
|
|
37
238
|
"timeout": 10,
|
|
38
|
-
"statusMessage": "SLOPE
|
|
239
|
+
"statusMessage": "SLOPE post-hole-enforcement"
|
|
39
240
|
}
|
|
40
241
|
]
|
|
41
242
|
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: slope-guard-warning
|
|
3
|
+
description: Respond to SLOPE guard warnings in Codex without bypassing sprint discipline. Trigger when a SLOPE guard warns, blocks, recommends a review, asks for a claim, or reports missing sprint context.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# SLOPE Guard Warnings
|
|
7
|
+
|
|
8
|
+
Treat guard output as operational context, not as generic text.
|
|
9
|
+
|
|
10
|
+
## Triage
|
|
11
|
+
|
|
12
|
+
1. Identify the guard name from the warning.
|
|
13
|
+
2. Run `slope guard docs <guard-name>` when behavior or configuration is unclear.
|
|
14
|
+
3. If the guard references sprint state, run `slope sprint status`.
|
|
15
|
+
4. If the guard references hazards, run `slope briefing --compact` or inspect the cited scorecard/common issue.
|
|
16
|
+
|
|
17
|
+
## Resolve
|
|
18
|
+
|
|
19
|
+
1. For missing sprint or claim warnings, start/claim the sprint or switch to the explicitly supported ad hoc mode.
|
|
20
|
+
2. For review warnings, run `slope review recommend` and complete the recommended review flow.
|
|
21
|
+
3. For hazard warnings, adjust the implementation or add a note to the scorecard explaining why the hazard did not apply.
|
|
22
|
+
4. Avoid disabling a guard unless the user explicitly asks for a configuration change.
|
|
23
|
+
|
|
24
|
+
## Verify
|
|
25
|
+
|
|
26
|
+
1. Re-run the original command when the guard is tied to a command path.
|
|
27
|
+
2. Use `slope guard metrics` when diagnosing whether a guard is silent, suppressed, or missing payload data.
|
|
28
|
+
3. Do not treat a silent guard as proof that no sprint workflow is required.
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: slope-setup
|
|
3
|
+
description: Set up SLOPE in a Codex-managed repository without requiring the user to know CLI details. Trigger when the user asks to install, initialize, update, or verify SLOPE for Codex.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# SLOPE Setup For Codex
|
|
7
|
+
|
|
8
|
+
Use this when the user wants SLOPE available from an agent harness.
|
|
9
|
+
|
|
10
|
+
## Install Or Update
|
|
11
|
+
|
|
12
|
+
1. Run `slope init --codex` from the repository root.
|
|
13
|
+
2. If the repo already has SLOPE, run `slope doctor --fix` after init.
|
|
14
|
+
3. Prefer one active Codex hook path:
|
|
15
|
+
- project-local: `.codex/hooks.json`
|
|
16
|
+
- user-level: `~/.codex/hooks.json`
|
|
17
|
+
4. Avoid enabling both paths for the same repo unless the user explicitly wants duplicate hook firing.
|
|
18
|
+
|
|
19
|
+
## Verify
|
|
20
|
+
|
|
21
|
+
1. Run `slope doctor`.
|
|
22
|
+
2. Run `slope hook list`.
|
|
23
|
+
3. Run `python3 -m json.tool .codex/hooks.json` for project-local hooks, or `python3 -m json.tool ~/.codex/hooks.json` for user-level hooks.
|
|
24
|
+
4. Run `bash -n .codex/hooks/slope-guard.sh` or `bash -n ~/.codex/hooks/slope-guard.sh`.
|
|
25
|
+
5. Restart Codex and review `/hooks` after hook changes.
|
|
26
|
+
|
|
27
|
+
## Explain
|
|
28
|
+
|
|
29
|
+
Tell the user that the Codex plugin bundle groups SLOPE skills, MCP metadata, and future plugin-hook metadata under a named SLOPE integration. Active guard enforcement still uses the stable Codex hooks.json shim while Codex `plugin_hooks` is under development.
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: slope-sprint
|
|
3
|
+
description: Use SLOPE from Codex to inspect, start, claim, or close a sprint in a repository with .slope state. Trigger when the user asks to set up SLOPE, register sprint work, check active sprint status, or close out sprint work.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# SLOPE Sprint Workflow
|
|
7
|
+
|
|
8
|
+
Use these commands from the repository root.
|
|
9
|
+
|
|
10
|
+
## Inspect
|
|
11
|
+
|
|
12
|
+
1. Run `slope sprint status`.
|
|
13
|
+
2. If no sprint is active, run `slope next` and `slope briefing --sprint=<next>`.
|
|
14
|
+
3. If a sprint is active, run `slope briefing --sprint=<active>` before editing.
|
|
15
|
+
|
|
16
|
+
## Start Or Claim
|
|
17
|
+
|
|
18
|
+
1. Start a sprint with `slope sprint begin --sprint=<number> --ticket=<issue-or-ticket>`.
|
|
19
|
+
2. If the issue is only on GitHub and not in the local roadmap, the command may report a prep lookup miss after creating sprint state and a claim. Treat that as non-blocking if `slope sprint status` shows the claim.
|
|
20
|
+
3. Create a feature branch before code changes.
|
|
21
|
+
|
|
22
|
+
## Work
|
|
23
|
+
|
|
24
|
+
1. Commit after each meaningful feature, file group, migration, or bug fix.
|
|
25
|
+
2. Push after each ticket and at least every 30 minutes.
|
|
26
|
+
3. When guards produce warnings, address the warning or record why it is not applicable.
|
|
27
|
+
|
|
28
|
+
## Close
|
|
29
|
+
|
|
30
|
+
1. Run focused tests, then `pnpm run typecheck`, `pnpm run build`, and the relevant full test suite for the change.
|
|
31
|
+
2. Run `slope review recommend`.
|
|
32
|
+
3. Add or update `docs/retros/sprint-<number>.json` and `docs/retros/sprint-<number>-review.md`.
|
|
33
|
+
4. Run `slope validate docs/retros/sprint-<number>.json`.
|
|
34
|
+
5. Mark gates with `slope sprint gate <gate>` only after the evidence exists.
|