@piagent/platform 1.0.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/.gitattributes +7 -0
- package/AGENTS.md +31 -0
- package/CHANGELOG.md +296 -0
- package/CODE_OF_CONDUCT.md +36 -0
- package/CONTRIBUTING.md +66 -0
- package/LICENSE +21 -0
- package/README.md +588 -0
- package/SECURITY.md +38 -0
- package/adapters/backend-api/profile.json +88 -0
- package/adapters/be-readonly-fe/profile.json +120 -0
- package/adapters/data/profile.json +88 -0
- package/adapters/devops/profile.json +92 -0
- package/adapters/docs/profile.json +74 -0
- package/adapters/fullstack/profile.json +94 -0
- package/adapters/generic/profile.json +95 -0
- package/adapters/mobile/profile.json +87 -0
- package/adapters/node-typescript/profile.json +76 -0
- package/adapters/python/profile.json +75 -0
- package/adapters/web-frontend/profile.json +101 -0
- package/catalog/capabilities.json +206 -0
- package/docs/architecture.md +64 -0
- package/docs/auto-delegation-policy.md +192 -0
- package/docs/capability-packs.md +234 -0
- package/docs/command-reference-vietnamese.md +484 -0
- package/docs/context-window-policy.md +85 -0
- package/docs/distribution-standard.md +229 -0
- package/docs/herdr-workflow.md +58 -0
- package/docs/mcp-and-tools.md +316 -0
- package/docs/memory-policy.md +164 -0
- package/docs/model-options.md +165 -0
- package/docs/oauth-providers.md +53 -0
- package/docs/operator-manual-vietnamese.md +1080 -0
- package/docs/package-architecture-notes.md +101 -0
- package/docs/project-adapters.md +174 -0
- package/docs/project-onboarding.md +135 -0
- package/docs/publishing-for-teams.md +64 -0
- package/docs/quality-benchmark.md +74 -0
- package/docs/quickstart-vietnamese.md +350 -0
- package/docs/release-install-policy.md +223 -0
- package/docs/runtime-harness-standard.md +118 -0
- package/docs/runtime-policy-design.md +132 -0
- package/docs/runtime-quality-baseline.md +257 -0
- package/docs/security-redaction-benchmark.md +56 -0
- package/docs/security-threat-model.md +66 -0
- package/docs/subagent-orchestration-capabilities.md +104 -0
- package/docs/subagents-and-multiagent.md +346 -0
- package/docs/task-implementation-contract.md +200 -0
- package/docs/team-onboarding.md +333 -0
- package/docs/usage-observability.md +130 -0
- package/docs/vercel-docs-site.md +115 -0
- package/docs/workflow-recipes.md +125 -0
- package/docs-site/assets/piagent-logo.svg +35 -0
- package/docs-site/favicon.svg +18 -0
- package/docs-site/index.html +1613 -0
- package/docs-site/vercel.json +24 -0
- package/evals/fixtures/action-proposal.invalid.json +34 -0
- package/evals/fixtures/action-proposal.valid.json +34 -0
- package/evals/fixtures/capability-pack.invalid.json +123 -0
- package/evals/fixtures/capability-pack.valid.json +123 -0
- package/evals/fixtures/capability-recipe.invalid.json +81 -0
- package/evals/fixtures/capability-recipe.valid.json +82 -0
- package/evals/fixtures/context-index.invalid.json +25 -0
- package/evals/fixtures/context-index.valid.json +25 -0
- package/evals/fixtures/eval-scenario.invalid.json +40 -0
- package/evals/fixtures/eval-scenario.valid.json +45 -0
- package/evals/fixtures/project-profile.invalid.json +88 -0
- package/evals/fixtures/project-profile.valid.json +95 -0
- package/evals/fixtures/task-contract.invalid.json +73 -0
- package/evals/fixtures/task-contract.valid.json +74 -0
- package/evals/golden/enforcement-decisions.json +329 -0
- package/evals/scenarios/capability-resolution.json +45 -0
- package/package.json +132 -0
- package/packages/piagent-core/README.md +147 -0
- package/packages/piagent-core/capabilities/capability-core.js +1023 -0
- package/packages/piagent-core/capabilities/capability-sources.js +265 -0
- package/packages/piagent-core/extensions/guard-io.js +45 -0
- package/packages/piagent-core/extensions/guard-shell-analysis.ts +558 -0
- package/packages/piagent-core/extensions/guard-types.ts +406 -0
- package/packages/piagent-core/extensions/piagent-guard.ts +5760 -0
- package/packages/piagent-core/extensions/policy-core.js +1070 -0
- package/packages/piagent-core/extensions/redaction-core.js +4 -0
- package/packages/piagent-core/extensions/runtime-evidence.js +215 -0
- package/packages/piagent-core/package.json +46 -0
- package/packages/piagent-core/policies/base-policy.json +249 -0
- package/packages/piagent-core/prompts/be-to-fe.md +82 -0
- package/packages/piagent-core/prompts/commit.md +27 -0
- package/packages/piagent-core/prompts/discuss.md +35 -0
- package/packages/piagent-core/prompts/memory-policy.md +52 -0
- package/packages/piagent-core/prompts/model-options.md +68 -0
- package/packages/piagent-core/prompts/onboard-project.md +147 -0
- package/packages/piagent-core/prompts/piagent-commands.md +68 -0
- package/packages/piagent-core/prompts/plan.md +35 -0
- package/packages/piagent-core/prompts/platform-improve.md +69 -0
- package/packages/piagent-core/prompts/pr.md +26 -0
- package/packages/piagent-core/prompts/review.md +38 -0
- package/packages/piagent-core/prompts/scout.md +50 -0
- package/packages/piagent-core/prompts/task.md +69 -0
- package/packages/piagent-core/security/sensitive-data.js +187 -0
- package/packages/piagent-core/skills/piagent-ops/SKILL.md +44 -0
- package/packages/piagent-core/skills/piagent-source-cache/SKILL.md +59 -0
- package/packages/piagent-core/skills/piagent-source-cache/checkout-source-repo.sh +144 -0
- package/packages/piagent-core/subagents/piagent-oracle.md +29 -0
- package/packages/piagent-core/subagents/piagent-planner.md +46 -0
- package/packages/piagent-core/subagents/piagent-reviewer.md +48 -0
- package/packages/piagent-core/subagents/piagent-scout.md +37 -0
- package/packages/piagent-core/subagents/piagent-worker.md +44 -0
- package/packs/engineering-base/pack.json +123 -0
- package/packs/engineering-base/recipes/bounded-change.json +82 -0
- package/packs/web-delivery/pack.json +72 -0
- package/packs/web-delivery/recipes/verified-web-change.json +57 -0
- package/schemas/action-proposal.schema.json +90 -0
- package/schemas/capability-pack.schema.json +190 -0
- package/schemas/capability-recipe.schema.json +72 -0
- package/schemas/context-index.schema.json +258 -0
- package/schemas/eval-scenario.schema.json +67 -0
- package/schemas/project-profile.schema.json +555 -0
- package/schemas/task-contract.schema.json +314 -0
- package/scripts/audit-runtime-host.sh +78 -0
- package/scripts/bootstrap-local.sh +25 -0
- package/scripts/capability-catalog.mjs +290 -0
- package/scripts/check-runtime-advisories.mjs +114 -0
- package/scripts/configure-mcp.sh +301 -0
- package/scripts/configure-model-scope.sh +143 -0
- package/scripts/configure-subagents.sh +241 -0
- package/scripts/import-agent-instructions.mjs +199 -0
- package/scripts/init-project.sh +369 -0
- package/scripts/install-global.sh +532 -0
- package/scripts/link-project.sh +25 -0
- package/scripts/migrate-project-state.mjs +176 -0
- package/scripts/pi-auto.sh +79 -0
- package/scripts/pi-model-catalog.sh +154 -0
- package/scripts/pi-session-stats.sh +135 -0
- package/scripts/piagent-cli.mjs +53 -0
- package/scripts/profile-doctor.sh +238 -0
- package/scripts/quality-benchmark.sh +185 -0
- package/scripts/redaction-benchmark.mjs +227 -0
- package/scripts/runtime-policy-smoke.sh +48 -0
- package/scripts/setup.sh +425 -0
- package/scripts/team-doctor.sh +461 -0
- package/scripts/verify-local.sh +540 -0
- package/scripts/verify-release-identity.mjs +85 -0
- package/scripts/verify-vercel-link.mjs +64 -0
- package/templates/global/mcp.json +9 -0
- package/templates/global/settings.json +37 -0
- package/templates/project/.mcp.json +9 -0
- package/templates/project/.pi/context-index.json +25 -0
- package/templates/project/.pi/gitignore.template +22 -0
- package/templates/project/.pi/mcp.json +9 -0
- package/templates/project/.pi/memory/MEMORY.md +11 -0
- package/templates/project/.pi/memory/memory_summary.md +9 -0
- package/templates/project/.pi/piagent-profile.json +107 -0
- package/templates/project/.pi/project-context.md +30 -0
- package/templates/project/.pi/settings.json +17 -0
- package/templates/project/.pi/task-contract.template.json +74 -0
- package/templates/project/.pi/tech-context/README.md +7 -0
- package/templates/project/.pi/tech-stack.json +10 -0
- package/templates/project/AGENTS.md +34 -0
- package/templates/project/REVIEW_GUIDELINES.md +23 -0
- package/types/pi-runtime-shims.d.ts +13 -0
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schemaVersion": 1,
|
|
3
|
+
"projectId": "backend-api-project",
|
|
4
|
+
"displayName": "Backend API Project",
|
|
5
|
+
"mode": "backend-api",
|
|
6
|
+
"permissionProfile": "workspace-write",
|
|
7
|
+
"rootMarkers": [
|
|
8
|
+
"AGENTS.md",
|
|
9
|
+
"README.md",
|
|
10
|
+
"package.json",
|
|
11
|
+
"pom.xml",
|
|
12
|
+
"build.gradle",
|
|
13
|
+
"build.gradle.kts",
|
|
14
|
+
"pyproject.toml"
|
|
15
|
+
],
|
|
16
|
+
"protectedPaths": [
|
|
17
|
+
".git/**",
|
|
18
|
+
"**/auth.json",
|
|
19
|
+
"**/.env",
|
|
20
|
+
"**/.env.*",
|
|
21
|
+
"**/*.pem",
|
|
22
|
+
"**/*.key",
|
|
23
|
+
"**/node_modules/**",
|
|
24
|
+
"**/dist/**",
|
|
25
|
+
"**/build/**",
|
|
26
|
+
"**/target/**",
|
|
27
|
+
"**/.gradle/**",
|
|
28
|
+
"**/coverage/**"
|
|
29
|
+
],
|
|
30
|
+
"requiredContext": [
|
|
31
|
+
"AGENTS.md",
|
|
32
|
+
".pi/project-context.md",
|
|
33
|
+
"README.md"
|
|
34
|
+
],
|
|
35
|
+
"taskModes": {
|
|
36
|
+
"readOnly": {
|
|
37
|
+
"tools": [
|
|
38
|
+
"read",
|
|
39
|
+
"grep",
|
|
40
|
+
"find",
|
|
41
|
+
"ls"
|
|
42
|
+
]
|
|
43
|
+
},
|
|
44
|
+
"sourceWrite": {
|
|
45
|
+
"requiresPlan": true,
|
|
46
|
+
"requiresVerify": true
|
|
47
|
+
},
|
|
48
|
+
"migrationOrSchema": {
|
|
49
|
+
"requiresPlan": true,
|
|
50
|
+
"requiresVerify": true,
|
|
51
|
+
"requiresHumanGate": true
|
|
52
|
+
}
|
|
53
|
+
},
|
|
54
|
+
"verifyCommands": {
|
|
55
|
+
"docsOnly": [
|
|
56
|
+
"test -s README.md"
|
|
57
|
+
],
|
|
58
|
+
"source": [
|
|
59
|
+
"if test -f package.json; then npm run type-check --if-present && npm run lint --if-present && npm test --if-present; elif test -x ./mvnw; then ./mvnw test; elif test -x ./gradlew; then ./gradlew test; elif test -f pyproject.toml && command -v uv >/dev/null 2>&1; then uv run pytest; elif test -f pyproject.toml; then python -m pytest; else echo 'No backend verify command configured; update .pi/piagent-profile.json'; fi"
|
|
60
|
+
]
|
|
61
|
+
},
|
|
62
|
+
"mcpCapabilities": [
|
|
63
|
+
"filesystem-readonly",
|
|
64
|
+
"filesystem-write",
|
|
65
|
+
"shell",
|
|
66
|
+
"github",
|
|
67
|
+
"database-readonly",
|
|
68
|
+
"memory"
|
|
69
|
+
],
|
|
70
|
+
"memory": {
|
|
71
|
+
"enabled": true,
|
|
72
|
+
"mode": "manual",
|
|
73
|
+
"scope": "project",
|
|
74
|
+
"summaryFile": ".pi/memory/memory_summary.md",
|
|
75
|
+
"handbookFile": ".pi/memory/MEMORY.md",
|
|
76
|
+
"localDir": ".pi/memory/local",
|
|
77
|
+
"readBeforeTask": true,
|
|
78
|
+
"writePolicy": "explicit-only",
|
|
79
|
+
"maxInjectedChars": 4000,
|
|
80
|
+
"externalPackages": []
|
|
81
|
+
},
|
|
82
|
+
"runtimePolicy": {
|
|
83
|
+
"execPolicy": "enforce",
|
|
84
|
+
"contextBudget": "enforce",
|
|
85
|
+
"toolRegistry": "advisory",
|
|
86
|
+
"finalGate": "enforce"
|
|
87
|
+
}
|
|
88
|
+
}
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schemaVersion": 1,
|
|
3
|
+
"projectId": "be-readonly-fe-project",
|
|
4
|
+
"displayName": "Backend Readonly / Frontend Write Project",
|
|
5
|
+
"mode": "be-readonly-fe",
|
|
6
|
+
"permissionProfile": "workspace-write",
|
|
7
|
+
"rootMarkers": [
|
|
8
|
+
"AGENTS.md",
|
|
9
|
+
"README.md",
|
|
10
|
+
"package.json",
|
|
11
|
+
"frontend",
|
|
12
|
+
"backend",
|
|
13
|
+
"apps",
|
|
14
|
+
"packages"
|
|
15
|
+
],
|
|
16
|
+
"protectedPaths": [
|
|
17
|
+
".git/**",
|
|
18
|
+
"**/auth.json",
|
|
19
|
+
"**/.env",
|
|
20
|
+
"**/.env.*",
|
|
21
|
+
"**/*.pem",
|
|
22
|
+
"**/*.key",
|
|
23
|
+
"**/node_modules/**",
|
|
24
|
+
"**/dist/**",
|
|
25
|
+
"**/build/**",
|
|
26
|
+
"**/.next/**",
|
|
27
|
+
"**/coverage/**"
|
|
28
|
+
],
|
|
29
|
+
"readOnlyPaths": [
|
|
30
|
+
"backend/**",
|
|
31
|
+
"server/**",
|
|
32
|
+
"api/**",
|
|
33
|
+
"apps/api/**",
|
|
34
|
+
"apps/server/**",
|
|
35
|
+
"services/backend/**",
|
|
36
|
+
"**/migrations/**"
|
|
37
|
+
],
|
|
38
|
+
"shellProtectedPaths": [
|
|
39
|
+
".git/**",
|
|
40
|
+
"**/auth.json",
|
|
41
|
+
"**/.env",
|
|
42
|
+
"**/.env.*",
|
|
43
|
+
"**/*.pem",
|
|
44
|
+
"**/*.key",
|
|
45
|
+
"backend/**",
|
|
46
|
+
"server/**",
|
|
47
|
+
"api/**",
|
|
48
|
+
"apps/api/**",
|
|
49
|
+
"apps/server/**",
|
|
50
|
+
"services/backend/**",
|
|
51
|
+
"**/migrations/**",
|
|
52
|
+
"**/node_modules/**",
|
|
53
|
+
"**/dist/**",
|
|
54
|
+
"**/build/**",
|
|
55
|
+
"**/.next/**",
|
|
56
|
+
"**/coverage/**"
|
|
57
|
+
],
|
|
58
|
+
"requiredContext": [
|
|
59
|
+
"AGENTS.md",
|
|
60
|
+
".pi/project-context.md",
|
|
61
|
+
"README.md"
|
|
62
|
+
],
|
|
63
|
+
"taskModes": {
|
|
64
|
+
"backendScout": {
|
|
65
|
+
"readOnly": true,
|
|
66
|
+
"tools": [
|
|
67
|
+
"read",
|
|
68
|
+
"grep",
|
|
69
|
+
"find",
|
|
70
|
+
"ls"
|
|
71
|
+
]
|
|
72
|
+
},
|
|
73
|
+
"frontendSourceWrite": {
|
|
74
|
+
"requiresPlan": true,
|
|
75
|
+
"requiresContractSnapshot": true,
|
|
76
|
+
"requiresVerify": true
|
|
77
|
+
},
|
|
78
|
+
"backendContractGap": {
|
|
79
|
+
"requiresReport": true,
|
|
80
|
+
"backendWriteAllowed": false
|
|
81
|
+
}
|
|
82
|
+
},
|
|
83
|
+
"verifyCommands": {
|
|
84
|
+
"docsOnly": [
|
|
85
|
+
"test -s README.md"
|
|
86
|
+
],
|
|
87
|
+
"frontendSource": [
|
|
88
|
+
"if test -f frontend/package.json; then cd frontend && npm run type-check --if-present && npm run lint --if-present && npm test --if-present; elif test -f apps/web/package.json; then cd apps/web && npm run type-check --if-present && npm run lint --if-present && npm test --if-present; elif test -f package.json; then npm run type-check --if-present && npm run lint --if-present && npm test --if-present; else echo 'No frontend verify command configured; update .pi/piagent-profile.json'; fi"
|
|
89
|
+
],
|
|
90
|
+
"frontendRuntime": [
|
|
91
|
+
"if test -f frontend/package.json; then cd frontend && npm run test:e2e --if-present; elif test -f apps/web/package.json; then cd apps/web && npm run test:e2e --if-present; elif test -f package.json; then npm run test:e2e --if-present; else echo 'No frontend runtime verify command configured; update .pi/piagent-profile.json'; fi"
|
|
92
|
+
]
|
|
93
|
+
},
|
|
94
|
+
"mcpCapabilities": [
|
|
95
|
+
"filesystem-readonly",
|
|
96
|
+
"filesystem-write",
|
|
97
|
+
"shell",
|
|
98
|
+
"github",
|
|
99
|
+
"browser",
|
|
100
|
+
"memory"
|
|
101
|
+
],
|
|
102
|
+
"memory": {
|
|
103
|
+
"enabled": true,
|
|
104
|
+
"mode": "manual",
|
|
105
|
+
"scope": "project",
|
|
106
|
+
"summaryFile": ".pi/memory/memory_summary.md",
|
|
107
|
+
"handbookFile": ".pi/memory/MEMORY.md",
|
|
108
|
+
"localDir": ".pi/memory/local",
|
|
109
|
+
"readBeforeTask": true,
|
|
110
|
+
"writePolicy": "explicit-only",
|
|
111
|
+
"maxInjectedChars": 4000,
|
|
112
|
+
"externalPackages": []
|
|
113
|
+
},
|
|
114
|
+
"runtimePolicy": {
|
|
115
|
+
"execPolicy": "enforce",
|
|
116
|
+
"contextBudget": "enforce",
|
|
117
|
+
"toolRegistry": "advisory",
|
|
118
|
+
"finalGate": "enforce"
|
|
119
|
+
}
|
|
120
|
+
}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schemaVersion": 1,
|
|
3
|
+
"projectId": "data-project",
|
|
4
|
+
"displayName": "Data / ETL Project",
|
|
5
|
+
"mode": "data",
|
|
6
|
+
"permissionProfile": "workspace-write",
|
|
7
|
+
"rootMarkers": [
|
|
8
|
+
"AGENTS.md",
|
|
9
|
+
"README.md",
|
|
10
|
+
"pyproject.toml",
|
|
11
|
+
"dbt_project.yml",
|
|
12
|
+
"dvc.yaml",
|
|
13
|
+
"notebooks",
|
|
14
|
+
"data"
|
|
15
|
+
],
|
|
16
|
+
"protectedPaths": [
|
|
17
|
+
".git/**",
|
|
18
|
+
"**/auth.json",
|
|
19
|
+
"**/.env",
|
|
20
|
+
"**/.env.*",
|
|
21
|
+
"**/.venv/**",
|
|
22
|
+
"**/__pycache__/**",
|
|
23
|
+
"**/.pytest_cache/**",
|
|
24
|
+
"data/raw/**",
|
|
25
|
+
"data/production/**",
|
|
26
|
+
"**/*.parquet",
|
|
27
|
+
"**/*.sqlite",
|
|
28
|
+
"**/*.duckdb"
|
|
29
|
+
],
|
|
30
|
+
"requiredContext": [
|
|
31
|
+
"AGENTS.md",
|
|
32
|
+
".pi/project-context.md",
|
|
33
|
+
"README.md"
|
|
34
|
+
],
|
|
35
|
+
"taskModes": {
|
|
36
|
+
"readOnly": {
|
|
37
|
+
"tools": [
|
|
38
|
+
"read",
|
|
39
|
+
"grep",
|
|
40
|
+
"find",
|
|
41
|
+
"ls"
|
|
42
|
+
]
|
|
43
|
+
},
|
|
44
|
+
"sourceWrite": {
|
|
45
|
+
"requiresPlan": true,
|
|
46
|
+
"requiresVerify": true
|
|
47
|
+
},
|
|
48
|
+
"dataMutation": {
|
|
49
|
+
"requiresPlan": true,
|
|
50
|
+
"requiresVerify": true,
|
|
51
|
+
"requiresHumanGate": true
|
|
52
|
+
}
|
|
53
|
+
},
|
|
54
|
+
"verifyCommands": {
|
|
55
|
+
"docsOnly": [
|
|
56
|
+
"test -s README.md"
|
|
57
|
+
],
|
|
58
|
+
"source": [
|
|
59
|
+
"if test -f pyproject.toml && command -v uv >/dev/null 2>&1; then uv run pytest; elif test -f pyproject.toml; then python -m pytest; elif test -f dbt_project.yml && command -v dbt >/dev/null 2>&1; then dbt compile; else echo 'No data verify command configured; update .pi/piagent-profile.json'; fi"
|
|
60
|
+
]
|
|
61
|
+
},
|
|
62
|
+
"mcpCapabilities": [
|
|
63
|
+
"filesystem-readonly",
|
|
64
|
+
"filesystem-write",
|
|
65
|
+
"shell",
|
|
66
|
+
"github",
|
|
67
|
+
"database-readonly",
|
|
68
|
+
"memory"
|
|
69
|
+
],
|
|
70
|
+
"memory": {
|
|
71
|
+
"enabled": true,
|
|
72
|
+
"mode": "manual",
|
|
73
|
+
"scope": "project",
|
|
74
|
+
"summaryFile": ".pi/memory/memory_summary.md",
|
|
75
|
+
"handbookFile": ".pi/memory/MEMORY.md",
|
|
76
|
+
"localDir": ".pi/memory/local",
|
|
77
|
+
"readBeforeTask": true,
|
|
78
|
+
"writePolicy": "explicit-only",
|
|
79
|
+
"maxInjectedChars": 4000,
|
|
80
|
+
"externalPackages": []
|
|
81
|
+
},
|
|
82
|
+
"runtimePolicy": {
|
|
83
|
+
"execPolicy": "enforce",
|
|
84
|
+
"contextBudget": "enforce",
|
|
85
|
+
"toolRegistry": "advisory",
|
|
86
|
+
"finalGate": "enforce"
|
|
87
|
+
}
|
|
88
|
+
}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schemaVersion": 1,
|
|
3
|
+
"projectId": "devops-project",
|
|
4
|
+
"displayName": "DevOps / Infrastructure Project",
|
|
5
|
+
"mode": "devops",
|
|
6
|
+
"permissionProfile": "workspace-write",
|
|
7
|
+
"rootMarkers": [
|
|
8
|
+
"AGENTS.md",
|
|
9
|
+
"README.md",
|
|
10
|
+
"Dockerfile",
|
|
11
|
+
"docker-compose.yml",
|
|
12
|
+
"compose.yml",
|
|
13
|
+
"compose.yaml",
|
|
14
|
+
".github/workflows",
|
|
15
|
+
"terraform",
|
|
16
|
+
"infra",
|
|
17
|
+
"k8s",
|
|
18
|
+
"helm"
|
|
19
|
+
],
|
|
20
|
+
"protectedPaths": [
|
|
21
|
+
".git/**",
|
|
22
|
+
"**/auth.json",
|
|
23
|
+
"**/.env",
|
|
24
|
+
"**/.env.*",
|
|
25
|
+
"**/*.pem",
|
|
26
|
+
"**/*.key",
|
|
27
|
+
"**/kubeconfig",
|
|
28
|
+
"**/.terraform/**",
|
|
29
|
+
"**/terraform.tfstate",
|
|
30
|
+
"**/terraform.tfstate.*"
|
|
31
|
+
],
|
|
32
|
+
"requiredContext": [
|
|
33
|
+
"AGENTS.md",
|
|
34
|
+
".pi/project-context.md",
|
|
35
|
+
"README.md"
|
|
36
|
+
],
|
|
37
|
+
"taskModes": {
|
|
38
|
+
"readOnly": {
|
|
39
|
+
"tools": [
|
|
40
|
+
"read",
|
|
41
|
+
"grep",
|
|
42
|
+
"find",
|
|
43
|
+
"ls"
|
|
44
|
+
]
|
|
45
|
+
},
|
|
46
|
+
"sourceWrite": {
|
|
47
|
+
"requiresPlan": true,
|
|
48
|
+
"requiresVerify": true
|
|
49
|
+
},
|
|
50
|
+
"externalApply": {
|
|
51
|
+
"requiresPlan": true,
|
|
52
|
+
"requiresVerify": true,
|
|
53
|
+
"requiresHumanGate": true
|
|
54
|
+
}
|
|
55
|
+
},
|
|
56
|
+
"verifyCommands": {
|
|
57
|
+
"docsOnly": [
|
|
58
|
+
"test -s README.md"
|
|
59
|
+
],
|
|
60
|
+
"source": [
|
|
61
|
+
"git diff --check",
|
|
62
|
+
"if command -v docker >/dev/null 2>&1 && { test -f docker-compose.yml || test -f compose.yml || test -f compose.yaml; }; then docker compose config >/dev/null; else echo 'docker compose config skipped'; fi",
|
|
63
|
+
"if command -v terraform >/dev/null 2>&1 && test -d terraform; then terraform -chdir=terraform validate; else echo 'terraform validate skipped'; fi"
|
|
64
|
+
]
|
|
65
|
+
},
|
|
66
|
+
"mcpCapabilities": [
|
|
67
|
+
"filesystem-readonly",
|
|
68
|
+
"filesystem-write",
|
|
69
|
+
"shell",
|
|
70
|
+
"github",
|
|
71
|
+
"cloud-provider-readonly",
|
|
72
|
+
"memory"
|
|
73
|
+
],
|
|
74
|
+
"memory": {
|
|
75
|
+
"enabled": true,
|
|
76
|
+
"mode": "manual",
|
|
77
|
+
"scope": "project",
|
|
78
|
+
"summaryFile": ".pi/memory/memory_summary.md",
|
|
79
|
+
"handbookFile": ".pi/memory/MEMORY.md",
|
|
80
|
+
"localDir": ".pi/memory/local",
|
|
81
|
+
"readBeforeTask": true,
|
|
82
|
+
"writePolicy": "explicit-only",
|
|
83
|
+
"maxInjectedChars": 4000,
|
|
84
|
+
"externalPackages": []
|
|
85
|
+
},
|
|
86
|
+
"runtimePolicy": {
|
|
87
|
+
"execPolicy": "enforce",
|
|
88
|
+
"contextBudget": "enforce",
|
|
89
|
+
"toolRegistry": "advisory",
|
|
90
|
+
"finalGate": "enforce"
|
|
91
|
+
}
|
|
92
|
+
}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schemaVersion": 1,
|
|
3
|
+
"projectId": "docs-project",
|
|
4
|
+
"displayName": "Documentation Project",
|
|
5
|
+
"mode": "docs",
|
|
6
|
+
"permissionProfile": "workspace-write",
|
|
7
|
+
"rootMarkers": [
|
|
8
|
+
"AGENTS.md",
|
|
9
|
+
"README.md",
|
|
10
|
+
"docs",
|
|
11
|
+
"mkdocs.yml",
|
|
12
|
+
"mint.json",
|
|
13
|
+
"docusaurus.config.js"
|
|
14
|
+
],
|
|
15
|
+
"protectedPaths": [
|
|
16
|
+
".git/**",
|
|
17
|
+
"**/auth.json",
|
|
18
|
+
"**/.env",
|
|
19
|
+
"**/.env.*"
|
|
20
|
+
],
|
|
21
|
+
"requiredContext": [
|
|
22
|
+
"AGENTS.md",
|
|
23
|
+
".pi/project-context.md",
|
|
24
|
+
"README.md"
|
|
25
|
+
],
|
|
26
|
+
"taskModes": {
|
|
27
|
+
"readOnly": {
|
|
28
|
+
"tools": [
|
|
29
|
+
"read",
|
|
30
|
+
"grep",
|
|
31
|
+
"find",
|
|
32
|
+
"ls"
|
|
33
|
+
]
|
|
34
|
+
},
|
|
35
|
+
"sourceWrite": {
|
|
36
|
+
"requiresPlan": true,
|
|
37
|
+
"requiresVerify": true
|
|
38
|
+
}
|
|
39
|
+
},
|
|
40
|
+
"verifyCommands": {
|
|
41
|
+
"docsOnly": [
|
|
42
|
+
"test -s README.md || test -d docs"
|
|
43
|
+
],
|
|
44
|
+
"source": [
|
|
45
|
+
"git diff --check",
|
|
46
|
+
"if test -f package.json; then npm test --if-present; else echo 'No docs test command configured; update .pi/piagent-profile.json if needed'; fi"
|
|
47
|
+
]
|
|
48
|
+
},
|
|
49
|
+
"mcpCapabilities": [
|
|
50
|
+
"filesystem-readonly",
|
|
51
|
+
"filesystem-write",
|
|
52
|
+
"shell",
|
|
53
|
+
"github",
|
|
54
|
+
"memory"
|
|
55
|
+
],
|
|
56
|
+
"memory": {
|
|
57
|
+
"enabled": true,
|
|
58
|
+
"mode": "manual",
|
|
59
|
+
"scope": "project",
|
|
60
|
+
"summaryFile": ".pi/memory/memory_summary.md",
|
|
61
|
+
"handbookFile": ".pi/memory/MEMORY.md",
|
|
62
|
+
"localDir": ".pi/memory/local",
|
|
63
|
+
"readBeforeTask": true,
|
|
64
|
+
"writePolicy": "explicit-only",
|
|
65
|
+
"maxInjectedChars": 4000,
|
|
66
|
+
"externalPackages": []
|
|
67
|
+
},
|
|
68
|
+
"runtimePolicy": {
|
|
69
|
+
"execPolicy": "enforce",
|
|
70
|
+
"contextBudget": "enforce",
|
|
71
|
+
"toolRegistry": "advisory",
|
|
72
|
+
"finalGate": "enforce"
|
|
73
|
+
}
|
|
74
|
+
}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schemaVersion": 1,
|
|
3
|
+
"projectId": "fullstack-project",
|
|
4
|
+
"displayName": "Fullstack Project",
|
|
5
|
+
"mode": "fullstack",
|
|
6
|
+
"permissionProfile": "workspace-write",
|
|
7
|
+
"rootMarkers": [
|
|
8
|
+
"AGENTS.md",
|
|
9
|
+
"README.md",
|
|
10
|
+
"package.json",
|
|
11
|
+
"apps",
|
|
12
|
+
"packages",
|
|
13
|
+
"frontend",
|
|
14
|
+
"backend"
|
|
15
|
+
],
|
|
16
|
+
"protectedPaths": [
|
|
17
|
+
".git/**",
|
|
18
|
+
"**/auth.json",
|
|
19
|
+
"**/.env",
|
|
20
|
+
"**/.env.*",
|
|
21
|
+
"**/*.pem",
|
|
22
|
+
"**/*.key",
|
|
23
|
+
"**/node_modules/**",
|
|
24
|
+
"**/dist/**",
|
|
25
|
+
"**/build/**",
|
|
26
|
+
"**/.next/**",
|
|
27
|
+
"**/coverage/**"
|
|
28
|
+
],
|
|
29
|
+
"requiredContext": [
|
|
30
|
+
"AGENTS.md",
|
|
31
|
+
".pi/project-context.md",
|
|
32
|
+
"README.md",
|
|
33
|
+
"package.json"
|
|
34
|
+
],
|
|
35
|
+
"taskModes": {
|
|
36
|
+
"readOnly": {
|
|
37
|
+
"tools": [
|
|
38
|
+
"read",
|
|
39
|
+
"grep",
|
|
40
|
+
"find",
|
|
41
|
+
"ls"
|
|
42
|
+
]
|
|
43
|
+
},
|
|
44
|
+
"sourceWrite": {
|
|
45
|
+
"requiresPlan": true,
|
|
46
|
+
"requiresVerify": true
|
|
47
|
+
},
|
|
48
|
+
"crossBoundary": {
|
|
49
|
+
"requiresPlan": true,
|
|
50
|
+
"requiresVerify": true,
|
|
51
|
+
"requiresTrace": true
|
|
52
|
+
}
|
|
53
|
+
},
|
|
54
|
+
"verifyCommands": {
|
|
55
|
+
"docsOnly": [
|
|
56
|
+
"test -s README.md"
|
|
57
|
+
],
|
|
58
|
+
"source": [
|
|
59
|
+
"npm run type-check --if-present",
|
|
60
|
+
"npm run lint --if-present",
|
|
61
|
+
"npm test --if-present"
|
|
62
|
+
],
|
|
63
|
+
"runtime": [
|
|
64
|
+
"npm run test:e2e --if-present"
|
|
65
|
+
]
|
|
66
|
+
},
|
|
67
|
+
"mcpCapabilities": [
|
|
68
|
+
"filesystem-readonly",
|
|
69
|
+
"filesystem-write",
|
|
70
|
+
"shell",
|
|
71
|
+
"github",
|
|
72
|
+
"browser",
|
|
73
|
+
"database-readonly",
|
|
74
|
+
"memory"
|
|
75
|
+
],
|
|
76
|
+
"memory": {
|
|
77
|
+
"enabled": true,
|
|
78
|
+
"mode": "manual",
|
|
79
|
+
"scope": "project",
|
|
80
|
+
"summaryFile": ".pi/memory/memory_summary.md",
|
|
81
|
+
"handbookFile": ".pi/memory/MEMORY.md",
|
|
82
|
+
"localDir": ".pi/memory/local",
|
|
83
|
+
"readBeforeTask": true,
|
|
84
|
+
"writePolicy": "explicit-only",
|
|
85
|
+
"maxInjectedChars": 4000,
|
|
86
|
+
"externalPackages": []
|
|
87
|
+
},
|
|
88
|
+
"runtimePolicy": {
|
|
89
|
+
"execPolicy": "enforce",
|
|
90
|
+
"contextBudget": "enforce",
|
|
91
|
+
"toolRegistry": "advisory",
|
|
92
|
+
"finalGate": "enforce"
|
|
93
|
+
}
|
|
94
|
+
}
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schemaVersion": 1,
|
|
3
|
+
"projectId": "generic-project",
|
|
4
|
+
"displayName": "Generic Project",
|
|
5
|
+
"mode": "generic",
|
|
6
|
+
"permissionProfile": "workspace-write",
|
|
7
|
+
"rootMarkers": [
|
|
8
|
+
"AGENTS.md",
|
|
9
|
+
"README.md",
|
|
10
|
+
"package.json",
|
|
11
|
+
"pyproject.toml",
|
|
12
|
+
"go.mod"
|
|
13
|
+
],
|
|
14
|
+
"protectedPaths": [
|
|
15
|
+
".git/**",
|
|
16
|
+
"**/auth.json",
|
|
17
|
+
"**/.env",
|
|
18
|
+
"**/.env.*",
|
|
19
|
+
"**/node_modules/**",
|
|
20
|
+
"**/dist/**"
|
|
21
|
+
],
|
|
22
|
+
"requiredContext": [
|
|
23
|
+
"AGENTS.md",
|
|
24
|
+
".pi/project-context.md",
|
|
25
|
+
"README.md"
|
|
26
|
+
],
|
|
27
|
+
"taskModes": {
|
|
28
|
+
"readOnly": {
|
|
29
|
+
"tools": [
|
|
30
|
+
"read",
|
|
31
|
+
"grep",
|
|
32
|
+
"find",
|
|
33
|
+
"ls"
|
|
34
|
+
]
|
|
35
|
+
},
|
|
36
|
+
"sourceWrite": {
|
|
37
|
+
"requiresPlan": true,
|
|
38
|
+
"requiresVerify": true
|
|
39
|
+
}
|
|
40
|
+
},
|
|
41
|
+
"verifyCommands": {
|
|
42
|
+
"docsOnly": [
|
|
43
|
+
"test -s README.md"
|
|
44
|
+
],
|
|
45
|
+
"source": [
|
|
46
|
+
"echo 'No project verify command configured; update .pi/piagent-profile.json'"
|
|
47
|
+
]
|
|
48
|
+
},
|
|
49
|
+
"mcpCapabilities": [
|
|
50
|
+
"filesystem-readonly",
|
|
51
|
+
"filesystem-write",
|
|
52
|
+
"shell",
|
|
53
|
+
"memory"
|
|
54
|
+
],
|
|
55
|
+
"capabilityPacks": [
|
|
56
|
+
{
|
|
57
|
+
"name": "engineering-base",
|
|
58
|
+
"version": "0.1.1"
|
|
59
|
+
}
|
|
60
|
+
],
|
|
61
|
+
"capabilityPolicy": {
|
|
62
|
+
"allowedOwners": [
|
|
63
|
+
"platform-maintainers"
|
|
64
|
+
],
|
|
65
|
+
"allowedLifecycles": [
|
|
66
|
+
"experimental"
|
|
67
|
+
],
|
|
68
|
+
"allowedFilesystemRead": [
|
|
69
|
+
"**/*"
|
|
70
|
+
],
|
|
71
|
+
"allowedFilesystemWrite": [
|
|
72
|
+
"**/*"
|
|
73
|
+
],
|
|
74
|
+
"allowedNetworkDomains": [],
|
|
75
|
+
"allowedExternalActions": []
|
|
76
|
+
},
|
|
77
|
+
"memory": {
|
|
78
|
+
"enabled": true,
|
|
79
|
+
"mode": "manual",
|
|
80
|
+
"scope": "project",
|
|
81
|
+
"summaryFile": ".pi/memory/memory_summary.md",
|
|
82
|
+
"handbookFile": ".pi/memory/MEMORY.md",
|
|
83
|
+
"localDir": ".pi/memory/local",
|
|
84
|
+
"readBeforeTask": true,
|
|
85
|
+
"writePolicy": "explicit-only",
|
|
86
|
+
"maxInjectedChars": 4000,
|
|
87
|
+
"externalPackages": []
|
|
88
|
+
},
|
|
89
|
+
"runtimePolicy": {
|
|
90
|
+
"execPolicy": "enforce",
|
|
91
|
+
"contextBudget": "enforce",
|
|
92
|
+
"toolRegistry": "advisory",
|
|
93
|
+
"finalGate": "enforce"
|
|
94
|
+
}
|
|
95
|
+
}
|