pi-rolecast 0.2.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/LICENSE +674 -0
- package/README.md +260 -0
- package/SKILL.md +89 -0
- package/dist/extension.d.ts +25 -0
- package/dist/extension.js +287 -0
- package/examples/rust/README.md +22 -0
- package/examples/rust/profile.yaml +51 -0
- package/package.json +71 -0
- package/references/dispatch-model-semantics.md +110 -0
- package/references/gate-runner-usage.md +19 -0
- package/references/migration-from-rust-agent-workflow.md +107 -0
- package/references/profile-schema.md +66 -0
- package/references/registry-resolution.md +14 -0
- package/references/scaffolder-usage.md +27 -0
- package/references/sync-settings-usage.md +67 -0
- package/registry/aliases.yaml +38 -0
- package/registry/built_in.yaml +42 -0
- package/requirements.txt +2 -0
- package/role-packs/coding/coding-architect.md +33 -0
- package/role-packs/coding/coding-auditor.md +31 -0
- package/role-packs/coding/coding-canary.md +31 -0
- package/role-packs/coding/coding-docs.md +32 -0
- package/role-packs/coding/coding-implementer.md +33 -0
- package/role-packs/coding/coding-mapper.md +31 -0
- package/role-packs/coding/coding-orchestrator.md +28 -0
- package/role-packs/coding/coding-planner.md +31 -0
- package/role-packs/coding/coding-profiler.md +31 -0
- package/role-packs/coding/coding-reviewer.md +32 -0
- package/role-packs/coding/coding-tester.md +32 -0
- package/scripts/gate_runner.py +155 -0
- package/scripts/install.sh +120 -0
- package/scripts/profile_loader.py +633 -0
- package/scripts/scaffolder.py +289 -0
- package/scripts/sync_settings.py +362 -0
- package/templates/blank.yaml +13 -0
- package/templates/go.yaml +44 -0
- package/templates/python.yaml +46 -0
- package/templates/rust.yaml +49 -0
- package/templates/typescript.yaml +46 -0
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
framework_version: 0.2.0
|
|
2
|
+
name: my-go-project
|
|
3
|
+
description: |
|
|
4
|
+
Workflow for a Go project.
|
|
5
|
+
|
|
6
|
+
workflow:
|
|
7
|
+
role_groups: [coding]
|
|
8
|
+
|
|
9
|
+
gates:
|
|
10
|
+
compile:
|
|
11
|
+
commands:
|
|
12
|
+
- go build ./...
|
|
13
|
+
timeout: 300
|
|
14
|
+
lint:
|
|
15
|
+
commands:
|
|
16
|
+
- go vet ./...
|
|
17
|
+
timeout: 300
|
|
18
|
+
test:
|
|
19
|
+
commands:
|
|
20
|
+
- go test ./...
|
|
21
|
+
timeout: 900
|
|
22
|
+
|
|
23
|
+
bindings:
|
|
24
|
+
coding-architect: {alias: opus-thinking-medium, channels: [official]}
|
|
25
|
+
coding-planner: {alias: deepseek-verifiable, channels: [official]}
|
|
26
|
+
coding-implementer: {alias: deepseek-verifiable, channels: [official]}
|
|
27
|
+
coding-tester: {alias: deepseek-verifiable, channels: [official]}
|
|
28
|
+
coding-reviewer: {alias: gpt-judgment-high, channels: [official, relay-default]}
|
|
29
|
+
coding-mapper: {alias: deepseek-verifiable, channels: [official]}
|
|
30
|
+
coding-profiler: {alias: deepseek-verifiable, channels: [official]}
|
|
31
|
+
coding-auditor: {alias: opus-thinking-high, channels: [official]}
|
|
32
|
+
coding-canary: {alias: minimax-fast, channels: [official]}
|
|
33
|
+
coding-docs: {alias: minimax-medium, channels: [official]}
|
|
34
|
+
coding-orchestrator: {alias: gpt-judgment-medium, channels: [official, relay-default]}
|
|
35
|
+
|
|
36
|
+
non_negotiables:
|
|
37
|
+
forbidden_patterns:
|
|
38
|
+
- pattern: 'panic\('
|
|
39
|
+
message: "no panic() in production code"
|
|
40
|
+
|
|
41
|
+
escalation:
|
|
42
|
+
max_attempts: 2
|
|
43
|
+
on_permanent_failure: stop
|
|
44
|
+
preserve_logs: true
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
framework_version: 0.2.0
|
|
2
|
+
name: my-python-project
|
|
3
|
+
description: |
|
|
4
|
+
Workflow for a Python project.
|
|
5
|
+
|
|
6
|
+
workflow:
|
|
7
|
+
role_groups: [coding]
|
|
8
|
+
|
|
9
|
+
gates:
|
|
10
|
+
compile:
|
|
11
|
+
commands:
|
|
12
|
+
- python3 -m compileall -q src
|
|
13
|
+
timeout: 120
|
|
14
|
+
lint:
|
|
15
|
+
commands:
|
|
16
|
+
- ruff check .
|
|
17
|
+
timeout: 120
|
|
18
|
+
test:
|
|
19
|
+
commands:
|
|
20
|
+
- pytest
|
|
21
|
+
timeout: 600
|
|
22
|
+
|
|
23
|
+
bindings:
|
|
24
|
+
coding-architect: {alias: opus-thinking-medium, channels: [official]}
|
|
25
|
+
coding-planner: {alias: deepseek-verifiable, channels: [official]}
|
|
26
|
+
coding-implementer: {alias: deepseek-verifiable, channels: [official]}
|
|
27
|
+
coding-tester: {alias: deepseek-verifiable, channels: [official]}
|
|
28
|
+
coding-reviewer: {alias: gpt-judgment-high, channels: [official, relay-default]}
|
|
29
|
+
coding-mapper: {alias: deepseek-verifiable, channels: [official]}
|
|
30
|
+
coding-profiler: {alias: deepseek-verifiable, channels: [official]}
|
|
31
|
+
coding-auditor: {alias: opus-thinking-high, channels: [official]}
|
|
32
|
+
coding-canary: {alias: minimax-fast, channels: [official]}
|
|
33
|
+
coding-docs: {alias: minimax-medium, channels: [official]}
|
|
34
|
+
coding-orchestrator: {alias: gpt-judgment-medium, channels: [official, relay-default]}
|
|
35
|
+
|
|
36
|
+
non_negotiables:
|
|
37
|
+
forbidden_patterns:
|
|
38
|
+
- pattern: '# type: ignore'
|
|
39
|
+
message: "no `# type: ignore` — fix the type"
|
|
40
|
+
- pattern: '\bprint\('
|
|
41
|
+
message: "no debug print() in committed code"
|
|
42
|
+
|
|
43
|
+
escalation:
|
|
44
|
+
max_attempts: 2
|
|
45
|
+
on_permanent_failure: stop
|
|
46
|
+
preserve_logs: true
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
# Pre-fill for Rust projects. Edit fields to match your toolchain.
|
|
2
|
+
|
|
3
|
+
framework_version: 0.2.0
|
|
4
|
+
name: my-rust-project
|
|
5
|
+
description: |
|
|
6
|
+
Workflow for the foo crate.
|
|
7
|
+
|
|
8
|
+
workflow:
|
|
9
|
+
# Add more groups as the framework ships them (e.g. video, research).
|
|
10
|
+
role_groups: [coding]
|
|
11
|
+
|
|
12
|
+
gates:
|
|
13
|
+
compile:
|
|
14
|
+
commands:
|
|
15
|
+
- cargo check --message-format short --all-targets
|
|
16
|
+
timeout: 300
|
|
17
|
+
lint:
|
|
18
|
+
commands:
|
|
19
|
+
- cargo clippy -- -D warnings
|
|
20
|
+
timeout: 300
|
|
21
|
+
test:
|
|
22
|
+
commands:
|
|
23
|
+
- cargo test
|
|
24
|
+
timeout: 900
|
|
25
|
+
|
|
26
|
+
bindings:
|
|
27
|
+
coding-architect: {alias: opus-thinking-medium, channels: [official]}
|
|
28
|
+
coding-planner: {alias: deepseek-verifiable, channels: [official]}
|
|
29
|
+
coding-implementer: {alias: deepseek-verifiable, channels: [official]}
|
|
30
|
+
coding-tester: {alias: deepseek-verifiable, channels: [official]}
|
|
31
|
+
coding-reviewer: {alias: gpt-judgment-high, channels: [official, relay-default]}
|
|
32
|
+
coding-mapper: {alias: deepseek-verifiable, channels: [official]}
|
|
33
|
+
coding-profiler: {alias: deepseek-verifiable, channels: [official]}
|
|
34
|
+
coding-auditor: {alias: opus-thinking-high, channels: [official]}
|
|
35
|
+
coding-canary: {alias: minimax-fast, channels: [official]}
|
|
36
|
+
coding-docs: {alias: minimax-medium, channels: [official]}
|
|
37
|
+
coding-orchestrator: {alias: gpt-judgment-medium, channels: [official, relay-default]}
|
|
38
|
+
|
|
39
|
+
non_negotiables:
|
|
40
|
+
forbidden_patterns:
|
|
41
|
+
- pattern: '#\[allow\('
|
|
42
|
+
message: "never silence a diagnostic with #[allow(...)]"
|
|
43
|
+
- pattern: '\.unwrap\(\)'
|
|
44
|
+
message: "no bare .unwrap() — handle the Result"
|
|
45
|
+
|
|
46
|
+
escalation:
|
|
47
|
+
max_attempts: 2
|
|
48
|
+
on_permanent_failure: stop
|
|
49
|
+
preserve_logs: true
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
framework_version: 0.2.0
|
|
2
|
+
name: my-ts-project
|
|
3
|
+
description: |
|
|
4
|
+
Workflow for a TypeScript project.
|
|
5
|
+
|
|
6
|
+
workflow:
|
|
7
|
+
role_groups: [coding]
|
|
8
|
+
|
|
9
|
+
gates:
|
|
10
|
+
compile:
|
|
11
|
+
commands:
|
|
12
|
+
- npx tsc --noEmit
|
|
13
|
+
timeout: 300
|
|
14
|
+
lint:
|
|
15
|
+
commands:
|
|
16
|
+
- npx eslint .
|
|
17
|
+
timeout: 300
|
|
18
|
+
test:
|
|
19
|
+
commands:
|
|
20
|
+
- npx jest
|
|
21
|
+
timeout: 900
|
|
22
|
+
|
|
23
|
+
bindings:
|
|
24
|
+
coding-architect: {alias: opus-thinking-medium, channels: [official]}
|
|
25
|
+
coding-planner: {alias: deepseek-verifiable, channels: [official]}
|
|
26
|
+
coding-implementer: {alias: deepseek-verifiable, channels: [official]}
|
|
27
|
+
coding-tester: {alias: deepseek-verifiable, channels: [official]}
|
|
28
|
+
coding-reviewer: {alias: gpt-judgment-high, channels: [official, relay-default]}
|
|
29
|
+
coding-mapper: {alias: deepseek-verifiable, channels: [official]}
|
|
30
|
+
coding-profiler: {alias: deepseek-verifiable, channels: [official]}
|
|
31
|
+
coding-auditor: {alias: opus-thinking-high, channels: [official]}
|
|
32
|
+
coding-canary: {alias: minimax-fast, channels: [official]}
|
|
33
|
+
coding-docs: {alias: minimax-medium, channels: [official]}
|
|
34
|
+
coding-orchestrator: {alias: gpt-judgment-medium, channels: [official, relay-default]}
|
|
35
|
+
|
|
36
|
+
non_negotiables:
|
|
37
|
+
forbidden_patterns:
|
|
38
|
+
- pattern: '@ts-ignore'
|
|
39
|
+
message: "no @ts-ignore — fix the type or refactor"
|
|
40
|
+
- pattern: 'as any'
|
|
41
|
+
message: "no `as any` — narrow the type instead"
|
|
42
|
+
|
|
43
|
+
escalation:
|
|
44
|
+
max_attempts: 2
|
|
45
|
+
on_permanent_failure: stop
|
|
46
|
+
preserve_logs: true
|