@mrciphersmith/keryx 0.3.5 → 0.3.7
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 +47 -0
- package/dist/cli.js +3099 -1160
- package/dist/core.js +22 -3
- package/docs/README.md +2 -0
- package/package.json +1 -1
- package/src/gdskills/bundled/install-manifest.json +319 -76
- package/src/gdskills/bundled/skills/orchestration/code-verifier/SKILL.md +19 -26
- package/src/gdskills/bundled/skills/orchestration/flow-orchestrator/SKILL.md +6 -6
- package/src/gdskills/bundled/skills/orchestration/job-orchestrator/SKILL.md +4 -7
- package/src/gdskills/bundled/skills/orchestration/task-implementer/SKILL.md +2 -4
- package/src/gdskills/bundled/skills/review/review-orchestrator/SKILL.detail.md +23 -0
- package/src/gdskills/bundled/skills/review/review-orchestrator/SKILL.md +17 -17
- package/src/gdskills/bundled/stacks/django/agent-refs.json +3 -0
- package/src/gdskills/bundled/stacks/django/governance/eval.json +1763 -0
- package/src/gdskills/bundled/stacks/django/governance/scout.json +40 -0
- package/src/gdskills/bundled/stacks/django/pack.json +43 -0
- package/src/gdskills/bundled/stacks/django/rules/coding-style.mdc +80 -0
- package/src/gdskills/bundled/stacks/django/rules/patterns.mdc +92 -0
- package/src/gdskills/bundled/stacks/django/rules/security.mdc +92 -0
- package/src/gdskills/bundled/stacks/django/rules/testing.mdc +89 -0
- package/src/gdskills/bundled/stacks/django/skills/django-build-fix/SKILL.md +149 -0
- package/src/gdskills/bundled/stacks/django/skills/django-build-fix/evals.json +49 -0
- package/src/gdskills/bundled/stacks/django/skills/django-code-review/SKILL.md +137 -0
- package/src/gdskills/bundled/stacks/django/skills/django-code-review/evals.json +48 -0
- package/src/gdskills/bundled/stacks/django/skills/django-implementation/SKILL.md +147 -0
- package/src/gdskills/bundled/stacks/django/skills/django-implementation/evals.json +75 -0
- package/src/gdskills/bundled/stacks/django/skills/django-migrate/SKILL.md +166 -0
- package/src/gdskills/bundled/stacks/django/skills/django-migrate/evals.json +49 -0
- package/src/gdskills/bundled/stacks/django/skills/django-testing/SKILL.md +130 -0
- package/src/gdskills/bundled/stacks/django/skills/django-testing/evals.json +48 -0
- package/src/gdskills/bundled/stacks/fastapi/agent-refs.json +3 -0
- package/src/gdskills/bundled/stacks/fastapi/governance/eval.json +1777 -0
- package/src/gdskills/bundled/stacks/fastapi/governance/scout.json +34 -0
- package/src/gdskills/bundled/stacks/fastapi/pack.json +43 -0
- package/src/gdskills/bundled/stacks/fastapi/rules/coding-style.mdc +68 -0
- package/src/gdskills/bundled/stacks/fastapi/rules/patterns.mdc +108 -0
- package/src/gdskills/bundled/stacks/fastapi/rules/security.mdc +99 -0
- package/src/gdskills/bundled/stacks/fastapi/rules/testing.mdc +85 -0
- package/src/gdskills/bundled/stacks/fastapi/skills/fastapi-build-fix/SKILL.md +157 -0
- package/src/gdskills/bundled/stacks/fastapi/skills/fastapi-build-fix/evals.json +76 -0
- package/src/gdskills/bundled/stacks/fastapi/skills/fastapi-code-review/SKILL.md +150 -0
- package/src/gdskills/bundled/stacks/fastapi/skills/fastapi-code-review/evals.json +74 -0
- package/src/gdskills/bundled/stacks/fastapi/skills/fastapi-implementation/SKILL.md +158 -0
- package/src/gdskills/bundled/stacks/fastapi/skills/fastapi-implementation/evals.json +75 -0
- package/src/gdskills/bundled/stacks/fastapi/skills/fastapi-testing/SKILL.md +146 -0
- package/src/gdskills/bundled/stacks/fastapi/skills/fastapi-testing/evals.json +74 -0
- package/src/gdskills/bundled/stacks/java-kotlin-spring/agent-refs.json +3 -0
- package/src/gdskills/bundled/stacks/java-kotlin-spring/governance/eval.json +2194 -0
- package/src/gdskills/bundled/stacks/java-kotlin-spring/governance/scout.json +39 -0
- package/src/gdskills/bundled/stacks/java-kotlin-spring/pack.json +40 -0
- package/src/gdskills/bundled/stacks/java-kotlin-spring/rules/coding-style.mdc +67 -0
- package/src/gdskills/bundled/stacks/java-kotlin-spring/rules/patterns.mdc +65 -0
- package/src/gdskills/bundled/stacks/java-kotlin-spring/rules/security.mdc +69 -0
- package/src/gdskills/bundled/stacks/java-kotlin-spring/rules/testing.mdc +80 -0
- package/src/gdskills/bundled/stacks/java-kotlin-spring/skills/java-kotlin-spring-build-fix/SKILL.md +144 -0
- package/src/gdskills/bundled/stacks/java-kotlin-spring/skills/java-kotlin-spring-build-fix/evals.json +74 -0
- package/src/gdskills/bundled/stacks/java-kotlin-spring/skills/java-kotlin-spring-code-review/SKILL.md +129 -0
- package/src/gdskills/bundled/stacks/java-kotlin-spring/skills/java-kotlin-spring-code-review/evals.json +74 -0
- package/src/gdskills/bundled/stacks/java-kotlin-spring/skills/java-kotlin-spring-implementation/SKILL.md +147 -0
- package/src/gdskills/bundled/stacks/java-kotlin-spring/skills/java-kotlin-spring-implementation/evals.json +75 -0
- package/src/gdskills/bundled/stacks/java-kotlin-spring/skills/java-kotlin-spring-migrate/SKILL.md +139 -0
- package/src/gdskills/bundled/stacks/java-kotlin-spring/skills/java-kotlin-spring-migrate/evals.json +74 -0
- package/src/gdskills/bundled/stacks/java-kotlin-spring/skills/java-kotlin-spring-testing/SKILL.md +128 -0
- package/src/gdskills/bundled/stacks/java-kotlin-spring/skills/java-kotlin-spring-testing/evals.json +73 -0
- package/src/gdskills/bundled/stacks/python/agent-refs.json +2 -1
- package/src/gdskills/bundled/stacks/python/pack.json +1 -1
- package/src/gdskills/bundled/stacks/rust/agent-refs.json +3 -0
- package/src/gdskills/bundled/stacks/rust/governance/eval.json +1823 -0
- package/src/gdskills/bundled/stacks/rust/governance/scout.json +32 -0
- package/src/gdskills/bundled/stacks/rust/pack.json +42 -0
- package/src/gdskills/bundled/stacks/rust/rules/coding-style.mdc +93 -0
- package/src/gdskills/bundled/stacks/rust/rules/patterns.mdc +85 -0
- package/src/gdskills/bundled/stacks/rust/rules/security.mdc +85 -0
- package/src/gdskills/bundled/stacks/rust/rules/testing.mdc +82 -0
- package/src/gdskills/bundled/stacks/rust/skills/rust-build-fix/SKILL.md +141 -0
- package/src/gdskills/bundled/stacks/rust/skills/rust-build-fix/evals.json +78 -0
- package/src/gdskills/bundled/stacks/rust/skills/rust-code-review/SKILL.md +127 -0
- package/src/gdskills/bundled/stacks/rust/skills/rust-code-review/evals.json +72 -0
- package/src/gdskills/bundled/stacks/rust/skills/rust-implementation/SKILL.md +133 -0
- package/src/gdskills/bundled/stacks/rust/skills/rust-implementation/evals.json +79 -0
- package/src/gdskills/bundled/stacks/rust/skills/rust-testing/SKILL.md +130 -0
- package/src/gdskills/bundled/stacks/rust/skills/rust-testing/evals.json +75 -0
- package/src/gdskills/bundled/agents/python-build-fixer.md +0 -52
- package/src/gdskills/bundled/agents/python-code-auditor.md +0 -49
package/dist/core.js
CHANGED
|
@@ -8599,15 +8599,15 @@ var CEILINGS_BY_KEY, SKILL_LENGTH_CEILINGS;
|
|
|
8599
8599
|
var init_skill_length_ceilings = __esm(() => {
|
|
8600
8600
|
CEILINGS_BY_KEY = {
|
|
8601
8601
|
"core/reviewer-skill-creator": 280,
|
|
8602
|
-
"orchestration/code-verifier":
|
|
8602
|
+
"orchestration/code-verifier": 339,
|
|
8603
8603
|
"orchestration/context-collector": 671,
|
|
8604
8604
|
"orchestration/feature-analyzer": 447,
|
|
8605
8605
|
"orchestration/feature-dev": 177,
|
|
8606
8606
|
"orchestration/flow-orchestrator": 696,
|
|
8607
8607
|
"orchestration/issue-analyzer": 373,
|
|
8608
8608
|
"orchestration/job-documenter": 414,
|
|
8609
|
-
"orchestration/job-orchestrator":
|
|
8610
|
-
"orchestration/task-implementer":
|
|
8609
|
+
"orchestration/job-orchestrator": 2243,
|
|
8610
|
+
"orchestration/task-implementer": 668,
|
|
8611
8611
|
"planning/autodoc-analyst": 180,
|
|
8612
8612
|
"planning/autodoc-architect": 179,
|
|
8613
8613
|
"planning/autodoc-assembler": 145,
|
|
@@ -11183,6 +11183,11 @@ var init_rules_export = __esm(() => {
|
|
|
11183
11183
|
init_registry();
|
|
11184
11184
|
});
|
|
11185
11185
|
|
|
11186
|
+
// src/integrations/jev-edit-guard-surface.ts
|
|
11187
|
+
var init_jev_edit_guard_surface = __esm(() => {
|
|
11188
|
+
init_settings_json();
|
|
11189
|
+
});
|
|
11190
|
+
|
|
11186
11191
|
// src/integrations/service.ts
|
|
11187
11192
|
var init_service = __esm(() => {
|
|
11188
11193
|
init_registry();
|
|
@@ -11191,6 +11196,7 @@ var init_service = __esm(() => {
|
|
|
11191
11196
|
init_codecs();
|
|
11192
11197
|
init_surfaces();
|
|
11193
11198
|
init_rules_export();
|
|
11199
|
+
init_jev_edit_guard_surface();
|
|
11194
11200
|
init_surfaces_w5b();
|
|
11195
11201
|
init_surfaces_learning();
|
|
11196
11202
|
init_markdown_block();
|
|
@@ -23371,6 +23377,7 @@ var exports_service3 = {};
|
|
|
23371
23377
|
__export(exports_service3, {
|
|
23372
23378
|
AC_CHECK_TOKEN_BUDGET: () => AC_CHECK_TOKEN_BUDGET,
|
|
23373
23379
|
CONFIRMATION_CAVEAT: () => CONFIRMATION_CAVEAT,
|
|
23380
|
+
REVIEW_GATE_CONFIG_PATH: () => REVIEW_GATE_CONFIG_PATH,
|
|
23374
23381
|
acCheckCacheKey: () => acCheckCacheKey,
|
|
23375
23382
|
acCheckCachePath: () => acCheckCachePath,
|
|
23376
23383
|
acCriterionKnown: () => acCriterionKnown,
|
|
@@ -37245,6 +37252,18 @@ var HELP_GROUPS = [
|
|
|
37245
37252
|
group: "Managed work",
|
|
37246
37253
|
summary: "Opt-in routing classifier: each request runs on its routing category's model \u2014 /route [on|off]."
|
|
37247
37254
|
},
|
|
37255
|
+
{
|
|
37256
|
+
kind: "slash",
|
|
37257
|
+
name: "/editguard",
|
|
37258
|
+
group: "Managed work",
|
|
37259
|
+
summary: "Jev EDIT GUARD status, threshold and recent flags for the Claude Code PostToolUse hook, with a toggle."
|
|
37260
|
+
},
|
|
37261
|
+
{
|
|
37262
|
+
kind: "slash",
|
|
37263
|
+
name: "/jevprofile",
|
|
37264
|
+
group: "Managed work",
|
|
37265
|
+
summary: "Every review.jev.* setting next to its measured verdict; toggle one or apply the recommended profile."
|
|
37266
|
+
},
|
|
37248
37267
|
{ kind: "slash", name: "/plan", group: "Managed work", summary: "Toggle read-only mode \u2014 /plan [on|off]." },
|
|
37249
37268
|
{
|
|
37250
37269
|
kind: "slash",
|
package/docs/README.md
CHANGED
|
@@ -14,6 +14,8 @@ intent, implementation plans, and release evidence do not get mixed together.
|
|
|
14
14
|
Gherkin scenarios for complete setup, validation, repair, and handoff.
|
|
15
15
|
- [Documentation index](docs/index.md) — compact navigation for the generated
|
|
16
16
|
current-behavior reference.
|
|
17
|
+
- [OpenAI API and ChatGPT subscriptions](docs/cli-reference.md#openai-api-and-chatgpt-subscriptions)
|
|
18
|
+
— separate providers, browser-completed device login, and connection checks.
|
|
17
19
|
|
|
18
20
|
## Product intent
|
|
19
21
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mrciphersmith/keryx",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.7",
|
|
4
4
|
"description": "Version-controlled project context for AI coding agents: code graph, architecture wiki, project memory, relevant tests, quality signals, and task flows.",
|
|
5
5
|
"private": false,
|
|
6
6
|
"publishConfig": {
|
|
@@ -116,6 +116,52 @@
|
|
|
116
116
|
],
|
|
117
117
|
"stackDetectionAware": true
|
|
118
118
|
},
|
|
119
|
+
"django": {
|
|
120
|
+
"description": "Common rules plus the Django-aware component set (extends `python`), installed when `keryx stack detect` finds a matching tag (fail open when detection is unavailable or uncertain).",
|
|
121
|
+
"modules": [
|
|
122
|
+
"core-common-rules",
|
|
123
|
+
"skill-lifecycle"
|
|
124
|
+
],
|
|
125
|
+
"components": [
|
|
126
|
+
"framework:django",
|
|
127
|
+
"lang:python"
|
|
128
|
+
],
|
|
129
|
+
"stackDetectionAware": true
|
|
130
|
+
},
|
|
131
|
+
"fastapi": {
|
|
132
|
+
"description": "Common rules plus the FastAPI-aware component set (extends `python`), installed when `keryx stack detect` finds a matching tag (fail open when detection is unavailable or uncertain).",
|
|
133
|
+
"modules": [
|
|
134
|
+
"core-common-rules",
|
|
135
|
+
"skill-lifecycle"
|
|
136
|
+
],
|
|
137
|
+
"components": [
|
|
138
|
+
"framework:fastapi",
|
|
139
|
+
"lang:python"
|
|
140
|
+
],
|
|
141
|
+
"stackDetectionAware": true
|
|
142
|
+
},
|
|
143
|
+
"rust": {
|
|
144
|
+
"description": "Common rules plus the Rust stack pack component (`rust-rules` + `rust-skills`, from src/gdskills/bundled/stacks/rust/), installed when `keryx stack detect` finds a matching tag.",
|
|
145
|
+
"modules": [
|
|
146
|
+
"core-common-rules",
|
|
147
|
+
"skill-lifecycle"
|
|
148
|
+
],
|
|
149
|
+
"components": [
|
|
150
|
+
"lang:rust"
|
|
151
|
+
],
|
|
152
|
+
"stackDetectionAware": true
|
|
153
|
+
},
|
|
154
|
+
"java-kotlin-spring": {
|
|
155
|
+
"description": "Common rules plus the Java/Kotlin + Spring Boot stack pack component (`java-kotlin-spring-rules` + `java-kotlin-spring-skills`, from src/gdskills/bundled/stacks/java-kotlin-spring/), installed when `keryx stack detect` finds a matching tag.",
|
|
156
|
+
"modules": [
|
|
157
|
+
"core-common-rules",
|
|
158
|
+
"skill-lifecycle"
|
|
159
|
+
],
|
|
160
|
+
"components": [
|
|
161
|
+
"framework:java-kotlin-spring"
|
|
162
|
+
],
|
|
163
|
+
"stackDetectionAware": true
|
|
164
|
+
},
|
|
119
165
|
"docker-k8s-terraform": {
|
|
120
166
|
"description": "Common rules plus the Docker/Kubernetes/Terraform tool pack component, installed when `keryx stack detect` finds a matching tag (docker, docker-compose, or terraform). Experimental: has not cleared the honest behavioral eval gate yet.",
|
|
121
167
|
"modules": [
|
|
@@ -138,80 +184,6 @@
|
|
|
138
184
|
],
|
|
139
185
|
"stackDetectionAware": true
|
|
140
186
|
},
|
|
141
|
-
"full": {
|
|
142
|
-
"description": "Every registered module and component, unconditionally.",
|
|
143
|
-
"modules": [
|
|
144
|
-
"core-common-rules",
|
|
145
|
-
"skill-lifecycle",
|
|
146
|
-
"orchestration-skills",
|
|
147
|
-
"quality-skills",
|
|
148
|
-
"review-core-skills",
|
|
149
|
-
"react-review-skills",
|
|
150
|
-
"mobx-review-skill",
|
|
151
|
-
"mobx-store-template-rule",
|
|
152
|
-
"mobx-rules",
|
|
153
|
-
"mobx-skills",
|
|
154
|
-
"nestjs-review-skill",
|
|
155
|
-
"nestjs-dto-rule",
|
|
156
|
-
"nestjs-rules",
|
|
157
|
-
"nestjs-skills",
|
|
158
|
-
"python-rules",
|
|
159
|
-
"python-skills",
|
|
160
|
-
"ts-js-node-rules",
|
|
161
|
-
"ts-js-node-skills",
|
|
162
|
-
"react-rules",
|
|
163
|
-
"react-skills",
|
|
164
|
-
"go-rules",
|
|
165
|
-
"go-skills",
|
|
166
|
-
"vue-rules",
|
|
167
|
-
"vue-skills",
|
|
168
|
-
"angular-rules",
|
|
169
|
-
"angular-skills",
|
|
170
|
-
"nextjs-nuxt-rules",
|
|
171
|
-
"nextjs-nuxt-skills",
|
|
172
|
-
"docker-k8s-terraform-rules",
|
|
173
|
-
"docker-k8s-terraform-skills",
|
|
174
|
-
"ci-github-gitlab-rules",
|
|
175
|
-
"ci-github-gitlab-skills",
|
|
176
|
-
"php-laravel-rules",
|
|
177
|
-
"php-laravel-skills",
|
|
178
|
-
"ruby-rails-rules",
|
|
179
|
-
"ruby-rails-skills",
|
|
180
|
-
"c-cpp-rules",
|
|
181
|
-
"c-cpp-skills",
|
|
182
|
-
"sql-db-rules",
|
|
183
|
-
"sql-db-skills",
|
|
184
|
-
"csharp-dotnet-rules",
|
|
185
|
-
"csharp-dotnet-skills",
|
|
186
|
-
"swift-ios-rules",
|
|
187
|
-
"swift-ios-skills",
|
|
188
|
-
"kotlin-android-rules",
|
|
189
|
-
"kotlin-android-skills",
|
|
190
|
-
"flutter-dart-rules",
|
|
191
|
-
"flutter-dart-skills"
|
|
192
|
-
],
|
|
193
|
-
"components": [
|
|
194
|
-
"lang:ts-js-node",
|
|
195
|
-
"framework:react",
|
|
196
|
-
"capability:mobx",
|
|
197
|
-
"framework:nestjs",
|
|
198
|
-
"lang:python",
|
|
199
|
-
"lang:go",
|
|
200
|
-
"framework:vue",
|
|
201
|
-
"framework:angular",
|
|
202
|
-
"framework:nextjs-nuxt",
|
|
203
|
-
"tool:docker-k8s-terraform",
|
|
204
|
-
"tool:ci-github-gitlab",
|
|
205
|
-
"framework:php-laravel",
|
|
206
|
-
"framework:ruby-rails",
|
|
207
|
-
"lang:c-cpp",
|
|
208
|
-
"capability:sql-db",
|
|
209
|
-
"lang:csharp-dotnet",
|
|
210
|
-
"framework:swift-ios",
|
|
211
|
-
"framework:kotlin-android",
|
|
212
|
-
"framework:flutter-dart"
|
|
213
|
-
]
|
|
214
|
-
},
|
|
215
187
|
"php-laravel": {
|
|
216
188
|
"description": "Common rules plus the PHP/Laravel stack pack component (`php-laravel-rules` + `php-laravel-skills`, from src/gdskills/bundled/stacks/php-laravel/), installed when `keryx stack detect` finds a matching tag.",
|
|
217
189
|
"modules": [
|
|
@@ -299,6 +271,92 @@
|
|
|
299
271
|
"framework:flutter-dart"
|
|
300
272
|
],
|
|
301
273
|
"stackDetectionAware": true
|
|
274
|
+
},
|
|
275
|
+
"full": {
|
|
276
|
+
"description": "Every registered module and component, unconditionally.",
|
|
277
|
+
"modules": [
|
|
278
|
+
"core-common-rules",
|
|
279
|
+
"skill-lifecycle",
|
|
280
|
+
"orchestration-skills",
|
|
281
|
+
"quality-skills",
|
|
282
|
+
"review-core-skills",
|
|
283
|
+
"react-review-skills",
|
|
284
|
+
"mobx-review-skill",
|
|
285
|
+
"mobx-store-template-rule",
|
|
286
|
+
"mobx-rules",
|
|
287
|
+
"mobx-skills",
|
|
288
|
+
"nestjs-review-skill",
|
|
289
|
+
"nestjs-dto-rule",
|
|
290
|
+
"nestjs-rules",
|
|
291
|
+
"nestjs-skills",
|
|
292
|
+
"python-rules",
|
|
293
|
+
"python-skills",
|
|
294
|
+
"ts-js-node-rules",
|
|
295
|
+
"ts-js-node-skills",
|
|
296
|
+
"react-rules",
|
|
297
|
+
"react-skills",
|
|
298
|
+
"go-rules",
|
|
299
|
+
"go-skills",
|
|
300
|
+
"vue-rules",
|
|
301
|
+
"vue-skills",
|
|
302
|
+
"angular-rules",
|
|
303
|
+
"angular-skills",
|
|
304
|
+
"nextjs-nuxt-rules",
|
|
305
|
+
"nextjs-nuxt-skills",
|
|
306
|
+
"django-rules",
|
|
307
|
+
"django-skills",
|
|
308
|
+
"fastapi-rules",
|
|
309
|
+
"fastapi-skills",
|
|
310
|
+
"rust-rules",
|
|
311
|
+
"rust-skills",
|
|
312
|
+
"java-kotlin-spring-rules",
|
|
313
|
+
"java-kotlin-spring-skills",
|
|
314
|
+
"docker-k8s-terraform-rules",
|
|
315
|
+
"docker-k8s-terraform-skills",
|
|
316
|
+
"ci-github-gitlab-rules",
|
|
317
|
+
"ci-github-gitlab-skills",
|
|
318
|
+
"php-laravel-rules",
|
|
319
|
+
"php-laravel-skills",
|
|
320
|
+
"ruby-rails-rules",
|
|
321
|
+
"ruby-rails-skills",
|
|
322
|
+
"c-cpp-rules",
|
|
323
|
+
"c-cpp-skills",
|
|
324
|
+
"sql-db-rules",
|
|
325
|
+
"sql-db-skills",
|
|
326
|
+
"csharp-dotnet-rules",
|
|
327
|
+
"csharp-dotnet-skills",
|
|
328
|
+
"swift-ios-rules",
|
|
329
|
+
"swift-ios-skills",
|
|
330
|
+
"kotlin-android-rules",
|
|
331
|
+
"kotlin-android-skills",
|
|
332
|
+
"flutter-dart-rules",
|
|
333
|
+
"flutter-dart-skills"
|
|
334
|
+
],
|
|
335
|
+
"components": [
|
|
336
|
+
"lang:ts-js-node",
|
|
337
|
+
"framework:react",
|
|
338
|
+
"capability:mobx",
|
|
339
|
+
"framework:nestjs",
|
|
340
|
+
"lang:python",
|
|
341
|
+
"lang:go",
|
|
342
|
+
"framework:vue",
|
|
343
|
+
"framework:angular",
|
|
344
|
+
"framework:nextjs-nuxt",
|
|
345
|
+
"framework:django",
|
|
346
|
+
"framework:fastapi",
|
|
347
|
+
"lang:rust",
|
|
348
|
+
"framework:java-kotlin-spring",
|
|
349
|
+
"tool:docker-k8s-terraform",
|
|
350
|
+
"tool:ci-github-gitlab",
|
|
351
|
+
"framework:php-laravel",
|
|
352
|
+
"framework:ruby-rails",
|
|
353
|
+
"lang:c-cpp",
|
|
354
|
+
"capability:sql-db",
|
|
355
|
+
"lang:csharp-dotnet",
|
|
356
|
+
"framework:swift-ios",
|
|
357
|
+
"framework:kotlin-android",
|
|
358
|
+
"framework:flutter-dart"
|
|
359
|
+
]
|
|
302
360
|
}
|
|
303
361
|
},
|
|
304
362
|
"modules": {
|
|
@@ -522,7 +580,7 @@
|
|
|
522
580
|
"dependencies": [],
|
|
523
581
|
"defaultInstall": true,
|
|
524
582
|
"cost": "light",
|
|
525
|
-
"stability": "
|
|
583
|
+
"stability": "experimental"
|
|
526
584
|
},
|
|
527
585
|
"python-skills": {
|
|
528
586
|
"kind": "skill",
|
|
@@ -537,7 +595,7 @@
|
|
|
537
595
|
"dependencies": [],
|
|
538
596
|
"defaultInstall": true,
|
|
539
597
|
"cost": "medium",
|
|
540
|
-
"stability": "
|
|
598
|
+
"stability": "experimental"
|
|
541
599
|
},
|
|
542
600
|
"ts-js-node-rules": {
|
|
543
601
|
"kind": "rule",
|
|
@@ -667,6 +725,40 @@
|
|
|
667
725
|
"cost": "medium",
|
|
668
726
|
"stability": "experimental"
|
|
669
727
|
},
|
|
728
|
+
"django-rules": {
|
|
729
|
+
"kind": "rule",
|
|
730
|
+
"description": "Django stack pack rules (coding-style, patterns, security, testing; scoped to *.py/*.pyi, extends python) from src/gdskills/bundled/stacks/django/rules/.",
|
|
731
|
+
"paths": [
|
|
732
|
+
"src/gdskills/bundled/stacks/django/rules/*.mdc"
|
|
733
|
+
],
|
|
734
|
+
"targets": [
|
|
735
|
+
"claude",
|
|
736
|
+
"keryx-shell"
|
|
737
|
+
],
|
|
738
|
+
"dependencies": [
|
|
739
|
+
"python-rules"
|
|
740
|
+
],
|
|
741
|
+
"defaultInstall": true,
|
|
742
|
+
"cost": "light",
|
|
743
|
+
"stability": "experimental"
|
|
744
|
+
},
|
|
745
|
+
"django-skills": {
|
|
746
|
+
"kind": "skill",
|
|
747
|
+
"description": "Django stack pack skills (implementation, testing, code review, build-fix, migrate) from src/gdskills/bundled/stacks/django/skills/.",
|
|
748
|
+
"paths": [
|
|
749
|
+
"src/gdskills/bundled/stacks/django/skills/**"
|
|
750
|
+
],
|
|
751
|
+
"targets": [
|
|
752
|
+
"claude",
|
|
753
|
+
"keryx-shell"
|
|
754
|
+
],
|
|
755
|
+
"dependencies": [
|
|
756
|
+
"python-skills"
|
|
757
|
+
],
|
|
758
|
+
"defaultInstall": true,
|
|
759
|
+
"cost": "medium",
|
|
760
|
+
"stability": "experimental"
|
|
761
|
+
},
|
|
670
762
|
"vue-rules": {
|
|
671
763
|
"kind": "rule",
|
|
672
764
|
"description": "Vue stack pack rules (coding-style, patterns, security, testing; scoped to *.vue) from src/gdskills/bundled/stacks/vue/rules/.",
|
|
@@ -684,6 +776,23 @@
|
|
|
684
776
|
"cost": "light",
|
|
685
777
|
"stability": "experimental"
|
|
686
778
|
},
|
|
779
|
+
"fastapi-rules": {
|
|
780
|
+
"kind": "rule",
|
|
781
|
+
"description": "FastAPI stack pack rules (coding-style, patterns, security, testing; scoped to *.py/*.pyi, extends python) from src/gdskills/bundled/stacks/fastapi/rules/.",
|
|
782
|
+
"paths": [
|
|
783
|
+
"src/gdskills/bundled/stacks/fastapi/rules/*.mdc"
|
|
784
|
+
],
|
|
785
|
+
"targets": [
|
|
786
|
+
"claude",
|
|
787
|
+
"keryx-shell"
|
|
788
|
+
],
|
|
789
|
+
"dependencies": [
|
|
790
|
+
"python-rules"
|
|
791
|
+
],
|
|
792
|
+
"defaultInstall": true,
|
|
793
|
+
"cost": "light",
|
|
794
|
+
"stability": "experimental"
|
|
795
|
+
},
|
|
687
796
|
"vue-skills": {
|
|
688
797
|
"kind": "skill",
|
|
689
798
|
"description": "Vue stack pack skills (implementation, testing, code review, build-fix, Vue 2 to Vue 3 migration) from src/gdskills/bundled/stacks/vue/skills/.",
|
|
@@ -701,6 +810,23 @@
|
|
|
701
810
|
"cost": "medium",
|
|
702
811
|
"stability": "experimental"
|
|
703
812
|
},
|
|
813
|
+
"fastapi-skills": {
|
|
814
|
+
"kind": "skill",
|
|
815
|
+
"description": "FastAPI stack pack skills (implementation, testing, code review, build-fix) from src/gdskills/bundled/stacks/fastapi/skills/.",
|
|
816
|
+
"paths": [
|
|
817
|
+
"src/gdskills/bundled/stacks/fastapi/skills/**"
|
|
818
|
+
],
|
|
819
|
+
"targets": [
|
|
820
|
+
"claude",
|
|
821
|
+
"keryx-shell"
|
|
822
|
+
],
|
|
823
|
+
"dependencies": [
|
|
824
|
+
"python-skills"
|
|
825
|
+
],
|
|
826
|
+
"defaultInstall": true,
|
|
827
|
+
"cost": "medium",
|
|
828
|
+
"stability": "experimental"
|
|
829
|
+
},
|
|
704
830
|
"angular-rules": {
|
|
705
831
|
"kind": "rule",
|
|
706
832
|
"description": "Angular stack pack rules (coding-style, patterns, security, testing; scoped to *.ts/*.html) from src/gdskills/bundled/stacks/angular/rules/.",
|
|
@@ -718,6 +844,21 @@
|
|
|
718
844
|
"cost": "light",
|
|
719
845
|
"stability": "experimental"
|
|
720
846
|
},
|
|
847
|
+
"rust-rules": {
|
|
848
|
+
"kind": "rule",
|
|
849
|
+
"description": "Rust stack pack rules (coding-style, patterns, security, testing; scoped to *.rs) from src/gdskills/bundled/stacks/rust/rules/.",
|
|
850
|
+
"paths": [
|
|
851
|
+
"src/gdskills/bundled/stacks/rust/rules/*.mdc"
|
|
852
|
+
],
|
|
853
|
+
"targets": [
|
|
854
|
+
"claude",
|
|
855
|
+
"keryx-shell"
|
|
856
|
+
],
|
|
857
|
+
"dependencies": [],
|
|
858
|
+
"defaultInstall": true,
|
|
859
|
+
"cost": "light",
|
|
860
|
+
"stability": "experimental"
|
|
861
|
+
},
|
|
721
862
|
"angular-skills": {
|
|
722
863
|
"kind": "skill",
|
|
723
864
|
"description": "Angular stack pack skills (implementation, testing, code review, build-fix) from src/gdskills/bundled/stacks/angular/skills/.",
|
|
@@ -735,6 +876,21 @@
|
|
|
735
876
|
"cost": "medium",
|
|
736
877
|
"stability": "experimental"
|
|
737
878
|
},
|
|
879
|
+
"rust-skills": {
|
|
880
|
+
"kind": "skill",
|
|
881
|
+
"description": "Rust stack pack skills (implementation, testing, code review, build-fix) from src/gdskills/bundled/stacks/rust/skills/.",
|
|
882
|
+
"paths": [
|
|
883
|
+
"src/gdskills/bundled/stacks/rust/skills/**"
|
|
884
|
+
],
|
|
885
|
+
"targets": [
|
|
886
|
+
"claude",
|
|
887
|
+
"keryx-shell"
|
|
888
|
+
],
|
|
889
|
+
"dependencies": [],
|
|
890
|
+
"defaultInstall": true,
|
|
891
|
+
"cost": "medium",
|
|
892
|
+
"stability": "experimental"
|
|
893
|
+
},
|
|
738
894
|
"nextjs-nuxt-rules": {
|
|
739
895
|
"kind": "rule",
|
|
740
896
|
"description": "Next.js/Nuxt meta-framework stack pack rules (coding-style, patterns, security, testing; scoped to *.tsx/*.jsx/*.vue) from src/gdskills/bundled/stacks/nextjs-nuxt/rules/.",
|
|
@@ -753,6 +909,21 @@
|
|
|
753
909
|
"cost": "light",
|
|
754
910
|
"stability": "experimental"
|
|
755
911
|
},
|
|
912
|
+
"java-kotlin-spring-rules": {
|
|
913
|
+
"kind": "rule",
|
|
914
|
+
"description": "Java/Kotlin + Spring Boot stack pack rules (coding-style, patterns, security, testing; scoped to *.java/*.kt/*.kts) from src/gdskills/bundled/stacks/java-kotlin-spring/rules/.",
|
|
915
|
+
"paths": [
|
|
916
|
+
"src/gdskills/bundled/stacks/java-kotlin-spring/rules/*.mdc"
|
|
917
|
+
],
|
|
918
|
+
"targets": [
|
|
919
|
+
"claude",
|
|
920
|
+
"keryx-shell"
|
|
921
|
+
],
|
|
922
|
+
"dependencies": [],
|
|
923
|
+
"defaultInstall": true,
|
|
924
|
+
"cost": "light",
|
|
925
|
+
"stability": "experimental"
|
|
926
|
+
},
|
|
756
927
|
"nextjs-nuxt-skills": {
|
|
757
928
|
"kind": "skill",
|
|
758
929
|
"description": "Next.js/Nuxt meta-framework stack pack skills (implementation, testing, code review, build-fix, upgrade migration) from src/gdskills/bundled/stacks/nextjs-nuxt/skills/.",
|
|
@@ -771,6 +942,21 @@
|
|
|
771
942
|
"cost": "medium",
|
|
772
943
|
"stability": "experimental"
|
|
773
944
|
},
|
|
945
|
+
"java-kotlin-spring-skills": {
|
|
946
|
+
"kind": "skill",
|
|
947
|
+
"description": "Java/Kotlin + Spring Boot stack pack skills (implementation, testing, code review, build-fix, migrate) from src/gdskills/bundled/stacks/java-kotlin-spring/skills/.",
|
|
948
|
+
"paths": [
|
|
949
|
+
"src/gdskills/bundled/stacks/java-kotlin-spring/skills/**"
|
|
950
|
+
],
|
|
951
|
+
"targets": [
|
|
952
|
+
"claude",
|
|
953
|
+
"keryx-shell"
|
|
954
|
+
],
|
|
955
|
+
"dependencies": [],
|
|
956
|
+
"defaultInstall": true,
|
|
957
|
+
"cost": "medium",
|
|
958
|
+
"stability": "experimental"
|
|
959
|
+
},
|
|
774
960
|
"mobx-rules": {
|
|
775
961
|
"kind": "rule",
|
|
776
962
|
"description": "MobX stack pack rules (coding-style, patterns, security, testing; scoped to *.ts/*.tsx) from src/gdskills/bundled/stacks/mobx/rules/. Complements, does not replace, the existing mobx-store-template-rule.",
|
|
@@ -1233,6 +1419,63 @@
|
|
|
1233
1419
|
"origin": "authored"
|
|
1234
1420
|
}
|
|
1235
1421
|
},
|
|
1422
|
+
"framework:django": {
|
|
1423
|
+
"family": "framework",
|
|
1424
|
+
"modules": [
|
|
1425
|
+
"django-rules",
|
|
1426
|
+
"django-skills"
|
|
1427
|
+
],
|
|
1428
|
+
"detectionMarkers": [
|
|
1429
|
+
"django"
|
|
1430
|
+
],
|
|
1431
|
+
"provenance": {
|
|
1432
|
+
"origin": "authored",
|
|
1433
|
+
"sourceRef": "flow 335, Wave 4 batch 3"
|
|
1434
|
+
}
|
|
1435
|
+
},
|
|
1436
|
+
"framework:fastapi": {
|
|
1437
|
+
"family": "framework",
|
|
1438
|
+
"modules": [
|
|
1439
|
+
"fastapi-rules",
|
|
1440
|
+
"fastapi-skills"
|
|
1441
|
+
],
|
|
1442
|
+
"detectionMarkers": [
|
|
1443
|
+
"fastapi"
|
|
1444
|
+
],
|
|
1445
|
+
"provenance": {
|
|
1446
|
+
"origin": "authored",
|
|
1447
|
+
"sourceRef": "flow 335, Wave 4 batch 3"
|
|
1448
|
+
}
|
|
1449
|
+
},
|
|
1450
|
+
"lang:rust": {
|
|
1451
|
+
"family": "language",
|
|
1452
|
+
"modules": [
|
|
1453
|
+
"rust-rules",
|
|
1454
|
+
"rust-skills"
|
|
1455
|
+
],
|
|
1456
|
+
"detectionMarkers": [
|
|
1457
|
+
"rust"
|
|
1458
|
+
],
|
|
1459
|
+
"provenance": {
|
|
1460
|
+
"origin": "authored",
|
|
1461
|
+
"sourceRef": "flow 335, Wave 4 batch 3"
|
|
1462
|
+
}
|
|
1463
|
+
},
|
|
1464
|
+
"framework:java-kotlin-spring": {
|
|
1465
|
+
"family": "framework",
|
|
1466
|
+
"modules": [
|
|
1467
|
+
"java-kotlin-spring-rules",
|
|
1468
|
+
"java-kotlin-spring-skills"
|
|
1469
|
+
],
|
|
1470
|
+
"detectionMarkers": [
|
|
1471
|
+
"spring-boot",
|
|
1472
|
+
"spring"
|
|
1473
|
+
],
|
|
1474
|
+
"provenance": {
|
|
1475
|
+
"origin": "authored",
|
|
1476
|
+
"sourceRef": "flow 335, Wave 4 batch 3"
|
|
1477
|
+
}
|
|
1478
|
+
},
|
|
1236
1479
|
"tool:docker-k8s-terraform": {
|
|
1237
1480
|
"family": "tool",
|
|
1238
1481
|
"modules": [
|
|
@@ -151,6 +151,17 @@ Capture:
|
|
|
151
151
|
- Exit code
|
|
152
152
|
- List of circular chains (if any)
|
|
153
153
|
|
|
154
|
+
**2.4 GitHub CI results (only when the dispatch names a PR or run id):**
|
|
155
|
+
```bash
|
|
156
|
+
gh pr checks <pr> --json name,state,link # or use the run id already given
|
|
157
|
+
```
|
|
158
|
+
For each failed check, when `review.jev.ci_triage` is on, run `keryx review
|
|
159
|
+
ci-triage --run <id> --json` before filing it as a finding — `real-regression`
|
|
160
|
+
files CRITICAL as usual; `flaky`/`deterministic` files INFO, "likely flaky —
|
|
161
|
+
rerun before treating as a defect"; `infra` files INFO, "infra failure, not a
|
|
162
|
+
code defect." Every red check still appears; only severity and note change.
|
|
163
|
+
Setting off → file CRITICAL as before, no Jev call.
|
|
164
|
+
|
|
154
165
|
---
|
|
155
166
|
|
|
156
167
|
### Phase 3: ANALYZE
|
|
@@ -259,26 +270,13 @@ STATUS: BLOCKED — could not run checks (missing tooling, wrong directory
|
|
|
259
270
|
|
|
260
271
|
## Integration with job-orchestrator
|
|
261
272
|
|
|
262
|
-
The orchestrator dispatches `code-verifier` at two points
|
|
263
|
-
|
|
264
|
-
**After task-implementer wave (pre-review gate):**
|
|
265
|
-
```
|
|
266
|
-
code-verifier:
|
|
267
|
-
codebase_path: <worktree_path>
|
|
268
|
-
scope: changed
|
|
269
|
-
base_branch: <base_branch from JOB_STATE>
|
|
270
|
-
→ If gate: FAIL → dispatch fix tasks → re-run code-verifier
|
|
271
|
-
→ If gate: PASS → proceed to review
|
|
272
|
-
```
|
|
273
|
+
The orchestrator dispatches `code-verifier` at two points, always with
|
|
274
|
+
`codebase_path: <worktree_path>` and `scope: changed`:
|
|
273
275
|
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
scope: changed
|
|
279
|
-
→ If gate still FAIL after 3 iterations → report as BLOCKED, skip to report
|
|
280
|
-
→ If gate: PASS → proceed to report
|
|
281
|
-
```
|
|
276
|
+
| Dispatch point | Extra input | On FAIL | On PASS |
|
|
277
|
+
|---|---|---|---|
|
|
278
|
+
| After task-implementer wave (pre-review gate) | `base_branch` from JOB_STATE | dispatch fix tasks, re-run | proceed to review |
|
|
279
|
+
| After fix iterations (post-fix gate) | — | after 3 iterations: report BLOCKED, skip to report | proceed to report |
|
|
282
280
|
|
|
283
281
|
**The orchestrator's internal "checks" step (2.8) is replaced by `code-verifier` dispatch.**
|
|
284
282
|
|
|
@@ -287,14 +285,9 @@ code-verifier:
|
|
|
287
285
|
## Standalone Usage
|
|
288
286
|
|
|
289
287
|
```bash
|
|
290
|
-
#
|
|
291
|
-
/code-verifier
|
|
292
|
-
|
|
293
|
-
# Run on specific project
|
|
288
|
+
/code-verifier # current directory, changed files only
|
|
294
289
|
/code-verifier --path /path/to/project
|
|
295
|
-
|
|
296
|
-
# Full project scan (not just changed files)
|
|
297
|
-
/code-verifier --scope full
|
|
290
|
+
/code-verifier --scope full # full project scan
|
|
298
291
|
```
|
|
299
292
|
|
|
300
293
|
---
|
|
@@ -26,13 +26,9 @@ license: "MIT"
|
|
|
26
26
|
Flow Orchestrator is the Task Manager-aware implementation orchestrator. Plan bridge: publish the tasks with `plan_set` under the ids `T1`…`Tn`, mirror each `keryx flow task done` with `plan_update`, and publish Phase 4's completion choice as `proposed` — see the `session-plan-bridge` rule.
|
|
27
27
|
It wraps the existing gdskills pipeline with `keryx flow` state.
|
|
28
28
|
|
|
29
|
-
Use this skill instead of `job-orchestrator` when the user wants a managed
|
|
30
|
-
story/issue lifecycle with frozen acceptance criteria, task state, an explicit
|
|
31
|
-
completion choice, Code Health, and a durable flow package in
|
|
32
|
-
`.metaproject/flows/`.
|
|
29
|
+
Use this skill instead of `job-orchestrator` when the user wants a managed story/issue lifecycle with frozen acceptance criteria, task state, an explicit completion choice, Code Health, and a durable flow package in `.metaproject/flows/`.
|
|
33
30
|
|
|
34
|
-
Do not modify `job-orchestrator` or `task-implementer` behavior. They remain
|
|
35
|
-
usable without Task Manager. This skill coordinates them through flow state.
|
|
31
|
+
Do not modify `job-orchestrator` or `task-implementer` behavior. They remain usable without Task Manager. This skill coordinates them through flow state.
|
|
36
32
|
|
|
37
33
|
## Hard Preconditions
|
|
38
34
|
|
|
@@ -311,6 +307,8 @@ Recommended worker routing:
|
|
|
311
307
|
| `review` | `review-orchestrator` |
|
|
312
308
|
| `docs` | `job-documenter`, `prd-creator`, or documentation-specific project skill |
|
|
313
309
|
|
|
310
|
+
**Before the first `task-implementer` dispatch of the run:** when `review.jev.edit_guard` is on (`.metaproject/tasks.config.json`), confirm the guard is active — `keryx review jev-edit-guard status`, else `keryx review jev-edit-guard install` — and say why in one line.
|
|
311
|
+
|
|
314
312
|
### Worker communication is schema-governed
|
|
315
313
|
|
|
316
314
|
Workers do not inherit session state; every dispatch is constructed explicitly
|
|
@@ -546,6 +544,8 @@ the bound plus an escalation — never an unbounded loop.
|
|
|
546
544
|
2. If findings or required check failures remain, create or update a flow fix
|
|
547
545
|
task, dispatch `task-implementer`, push the fix, and run review again.
|
|
548
546
|
|
|
547
|
+
**A required check failure is not automatically a fix task.** When `review.jev.ci_triage` is on, run `keryx review ci-triage --run <id> --json` on each failed run first: `top: flaky` (or a `deterministic` override) → rerun once (`gh run rerun --failed <id>`), record it in `journal.md`, and treat a second failure as `real-regression` regardless; `top: real-regression` → investigate and fix as usual; `top: infra` → report it in the completion notes and leave the code alone. The verdict is advisory only — never the sole reason to skip a fix task.
|
|
548
|
+
|
|
549
549
|
**The threshold is `minor`.** The loop exits when the round reports zero
|
|
550
550
|
findings at `blocker`, `major` or `minor`; `info` does not hold it. State the
|
|
551
551
|
remaining `info` findings in the completion report rather than fixing them
|