@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.
Files changed (159) hide show
  1. package/.gitattributes +7 -0
  2. package/AGENTS.md +31 -0
  3. package/CHANGELOG.md +296 -0
  4. package/CODE_OF_CONDUCT.md +36 -0
  5. package/CONTRIBUTING.md +66 -0
  6. package/LICENSE +21 -0
  7. package/README.md +588 -0
  8. package/SECURITY.md +38 -0
  9. package/adapters/backend-api/profile.json +88 -0
  10. package/adapters/be-readonly-fe/profile.json +120 -0
  11. package/adapters/data/profile.json +88 -0
  12. package/adapters/devops/profile.json +92 -0
  13. package/adapters/docs/profile.json +74 -0
  14. package/adapters/fullstack/profile.json +94 -0
  15. package/adapters/generic/profile.json +95 -0
  16. package/adapters/mobile/profile.json +87 -0
  17. package/adapters/node-typescript/profile.json +76 -0
  18. package/adapters/python/profile.json +75 -0
  19. package/adapters/web-frontend/profile.json +101 -0
  20. package/catalog/capabilities.json +206 -0
  21. package/docs/architecture.md +64 -0
  22. package/docs/auto-delegation-policy.md +192 -0
  23. package/docs/capability-packs.md +234 -0
  24. package/docs/command-reference-vietnamese.md +484 -0
  25. package/docs/context-window-policy.md +85 -0
  26. package/docs/distribution-standard.md +229 -0
  27. package/docs/herdr-workflow.md +58 -0
  28. package/docs/mcp-and-tools.md +316 -0
  29. package/docs/memory-policy.md +164 -0
  30. package/docs/model-options.md +165 -0
  31. package/docs/oauth-providers.md +53 -0
  32. package/docs/operator-manual-vietnamese.md +1080 -0
  33. package/docs/package-architecture-notes.md +101 -0
  34. package/docs/project-adapters.md +174 -0
  35. package/docs/project-onboarding.md +135 -0
  36. package/docs/publishing-for-teams.md +64 -0
  37. package/docs/quality-benchmark.md +74 -0
  38. package/docs/quickstart-vietnamese.md +350 -0
  39. package/docs/release-install-policy.md +223 -0
  40. package/docs/runtime-harness-standard.md +118 -0
  41. package/docs/runtime-policy-design.md +132 -0
  42. package/docs/runtime-quality-baseline.md +257 -0
  43. package/docs/security-redaction-benchmark.md +56 -0
  44. package/docs/security-threat-model.md +66 -0
  45. package/docs/subagent-orchestration-capabilities.md +104 -0
  46. package/docs/subagents-and-multiagent.md +346 -0
  47. package/docs/task-implementation-contract.md +200 -0
  48. package/docs/team-onboarding.md +333 -0
  49. package/docs/usage-observability.md +130 -0
  50. package/docs/vercel-docs-site.md +115 -0
  51. package/docs/workflow-recipes.md +125 -0
  52. package/docs-site/assets/piagent-logo.svg +35 -0
  53. package/docs-site/favicon.svg +18 -0
  54. package/docs-site/index.html +1613 -0
  55. package/docs-site/vercel.json +24 -0
  56. package/evals/fixtures/action-proposal.invalid.json +34 -0
  57. package/evals/fixtures/action-proposal.valid.json +34 -0
  58. package/evals/fixtures/capability-pack.invalid.json +123 -0
  59. package/evals/fixtures/capability-pack.valid.json +123 -0
  60. package/evals/fixtures/capability-recipe.invalid.json +81 -0
  61. package/evals/fixtures/capability-recipe.valid.json +82 -0
  62. package/evals/fixtures/context-index.invalid.json +25 -0
  63. package/evals/fixtures/context-index.valid.json +25 -0
  64. package/evals/fixtures/eval-scenario.invalid.json +40 -0
  65. package/evals/fixtures/eval-scenario.valid.json +45 -0
  66. package/evals/fixtures/project-profile.invalid.json +88 -0
  67. package/evals/fixtures/project-profile.valid.json +95 -0
  68. package/evals/fixtures/task-contract.invalid.json +73 -0
  69. package/evals/fixtures/task-contract.valid.json +74 -0
  70. package/evals/golden/enforcement-decisions.json +329 -0
  71. package/evals/scenarios/capability-resolution.json +45 -0
  72. package/package.json +132 -0
  73. package/packages/piagent-core/README.md +147 -0
  74. package/packages/piagent-core/capabilities/capability-core.js +1023 -0
  75. package/packages/piagent-core/capabilities/capability-sources.js +265 -0
  76. package/packages/piagent-core/extensions/guard-io.js +45 -0
  77. package/packages/piagent-core/extensions/guard-shell-analysis.ts +558 -0
  78. package/packages/piagent-core/extensions/guard-types.ts +406 -0
  79. package/packages/piagent-core/extensions/piagent-guard.ts +5760 -0
  80. package/packages/piagent-core/extensions/policy-core.js +1070 -0
  81. package/packages/piagent-core/extensions/redaction-core.js +4 -0
  82. package/packages/piagent-core/extensions/runtime-evidence.js +215 -0
  83. package/packages/piagent-core/package.json +46 -0
  84. package/packages/piagent-core/policies/base-policy.json +249 -0
  85. package/packages/piagent-core/prompts/be-to-fe.md +82 -0
  86. package/packages/piagent-core/prompts/commit.md +27 -0
  87. package/packages/piagent-core/prompts/discuss.md +35 -0
  88. package/packages/piagent-core/prompts/memory-policy.md +52 -0
  89. package/packages/piagent-core/prompts/model-options.md +68 -0
  90. package/packages/piagent-core/prompts/onboard-project.md +147 -0
  91. package/packages/piagent-core/prompts/piagent-commands.md +68 -0
  92. package/packages/piagent-core/prompts/plan.md +35 -0
  93. package/packages/piagent-core/prompts/platform-improve.md +69 -0
  94. package/packages/piagent-core/prompts/pr.md +26 -0
  95. package/packages/piagent-core/prompts/review.md +38 -0
  96. package/packages/piagent-core/prompts/scout.md +50 -0
  97. package/packages/piagent-core/prompts/task.md +69 -0
  98. package/packages/piagent-core/security/sensitive-data.js +187 -0
  99. package/packages/piagent-core/skills/piagent-ops/SKILL.md +44 -0
  100. package/packages/piagent-core/skills/piagent-source-cache/SKILL.md +59 -0
  101. package/packages/piagent-core/skills/piagent-source-cache/checkout-source-repo.sh +144 -0
  102. package/packages/piagent-core/subagents/piagent-oracle.md +29 -0
  103. package/packages/piagent-core/subagents/piagent-planner.md +46 -0
  104. package/packages/piagent-core/subagents/piagent-reviewer.md +48 -0
  105. package/packages/piagent-core/subagents/piagent-scout.md +37 -0
  106. package/packages/piagent-core/subagents/piagent-worker.md +44 -0
  107. package/packs/engineering-base/pack.json +123 -0
  108. package/packs/engineering-base/recipes/bounded-change.json +82 -0
  109. package/packs/web-delivery/pack.json +72 -0
  110. package/packs/web-delivery/recipes/verified-web-change.json +57 -0
  111. package/schemas/action-proposal.schema.json +90 -0
  112. package/schemas/capability-pack.schema.json +190 -0
  113. package/schemas/capability-recipe.schema.json +72 -0
  114. package/schemas/context-index.schema.json +258 -0
  115. package/schemas/eval-scenario.schema.json +67 -0
  116. package/schemas/project-profile.schema.json +555 -0
  117. package/schemas/task-contract.schema.json +314 -0
  118. package/scripts/audit-runtime-host.sh +78 -0
  119. package/scripts/bootstrap-local.sh +25 -0
  120. package/scripts/capability-catalog.mjs +290 -0
  121. package/scripts/check-runtime-advisories.mjs +114 -0
  122. package/scripts/configure-mcp.sh +301 -0
  123. package/scripts/configure-model-scope.sh +143 -0
  124. package/scripts/configure-subagents.sh +241 -0
  125. package/scripts/import-agent-instructions.mjs +199 -0
  126. package/scripts/init-project.sh +369 -0
  127. package/scripts/install-global.sh +532 -0
  128. package/scripts/link-project.sh +25 -0
  129. package/scripts/migrate-project-state.mjs +176 -0
  130. package/scripts/pi-auto.sh +79 -0
  131. package/scripts/pi-model-catalog.sh +154 -0
  132. package/scripts/pi-session-stats.sh +135 -0
  133. package/scripts/piagent-cli.mjs +53 -0
  134. package/scripts/profile-doctor.sh +238 -0
  135. package/scripts/quality-benchmark.sh +185 -0
  136. package/scripts/redaction-benchmark.mjs +227 -0
  137. package/scripts/runtime-policy-smoke.sh +48 -0
  138. package/scripts/setup.sh +425 -0
  139. package/scripts/team-doctor.sh +461 -0
  140. package/scripts/verify-local.sh +540 -0
  141. package/scripts/verify-release-identity.mjs +85 -0
  142. package/scripts/verify-vercel-link.mjs +64 -0
  143. package/templates/global/mcp.json +9 -0
  144. package/templates/global/settings.json +37 -0
  145. package/templates/project/.mcp.json +9 -0
  146. package/templates/project/.pi/context-index.json +25 -0
  147. package/templates/project/.pi/gitignore.template +22 -0
  148. package/templates/project/.pi/mcp.json +9 -0
  149. package/templates/project/.pi/memory/MEMORY.md +11 -0
  150. package/templates/project/.pi/memory/memory_summary.md +9 -0
  151. package/templates/project/.pi/piagent-profile.json +107 -0
  152. package/templates/project/.pi/project-context.md +30 -0
  153. package/templates/project/.pi/settings.json +17 -0
  154. package/templates/project/.pi/task-contract.template.json +74 -0
  155. package/templates/project/.pi/tech-context/README.md +7 -0
  156. package/templates/project/.pi/tech-stack.json +10 -0
  157. package/templates/project/AGENTS.md +34 -0
  158. package/templates/project/REVIEW_GUIDELINES.md +23 -0
  159. 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
+ }