Repository navigation
Expand file tree
/
Copy pathpackage.json
More file actions
158 lines (158 loc) · 7.19 KB
/
Copy pathpackage.json
File metadata and controls
158 lines (158 loc) · 7.19 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
{
"name": "pantheon-opencode",
"version": "2.0.4",
"description": "Multi-agent orchestration for OpenCode \u2014 14 specialized agents, TDD, Themis review gates.",
"type": "module",
"workspaces": [
"src/plugins/tui"
],
"publishConfig": {
"access": "public",
"registry": "https://registry.npmjs.org/"
},
"exports": {
"./local-decision-router": "./src/pantheon/local-decision-router.ts",
"./plugin": "./src/plugin.ts"
},
"scripts": {
"postinstall": "node scripts/postinstall.mjs && node scripts/sync-tui.mjs",
"prepare": "git rev-parse --is-inside-work-tree >/dev/null 2>&1 && husky",
"setup": "node scripts/setup.mjs",
"build:agents-md": "node scripts/build-agents-md.mjs",
"build:decision-router": "node scripts/build-decision-router.mjs",
"build:plugin": "node scripts/build-plugin.mjs",
"check:decision-router": "node scripts/build-decision-router.mjs --check",
"skills:lock": "node scripts/update-skills-lock.mjs",
"setup:lite": "node bin/pantheon-init.mjs init --yes --clean --components agents,skills,instructions",
"doctor": "node scripts/doctor.mjs",
"prune": "node scripts/prune.mjs",
"init": "node bin/pantheon-init.mjs init --yes",
"opencode": "OPENCODE_EXPERIMENTAL_BACKGROUND_SUBAGENTS=true opencode",
"start": "OPENCODE_EXPERIMENTAL_BACKGROUND_SUBAGENTS=true opencode",
"prepack": "npm run build:plugin && npm run check:decision-router",
"prepublishOnly": "node scripts/validate-routing.mjs && npm run build:plugin && npm run check:decision-router",
"postpublish": "node -e \"console.log('\u2705 Published pantheon-opencode v' + require('./package.json').version + ' to npm')\"",
"version:status": "node scripts/versioning.mjs status",
"version:apply": "node scripts/versioning.mjs apply",
"version:check": "node scripts/version-check.mjs",
"release:dry-run": "node scripts/versioning.mjs status && node scripts/release-notes.mjs && node scripts/package-evidence.mjs",
"package:evidence": "node scripts/package-evidence.mjs",
"engine:check": "node scripts/validate-node-engine-policy.mjs",
"package:validate": "node scripts/validate-package.mjs && npm run check:decision-router && npm run engine:check",
"lint": "biome ci .",
"docs:lint": "node scripts/docs-link-check.mjs",
"docs:media": "node scripts/docs-media.mjs",
"docs:check-changelog": "node scripts/docs-check-changelog.mjs",
"typecheck": "tsc --noEmit",
"audit": "npm audit --audit-level=high",
"secret-scan": "node scripts/secret-scan.mjs",
"hooks:install": "pre-commit install",
"hooks:update": "pre-commit autoupdate",
"test:security": "npm run secret-scan",
"test:node": "node scripts/run-node-tests.mjs --label 'test:node' --exclude 'tests/install-opencode.test.mjs' --exclude 'tests/install-e2e.test.mjs' 'tests/*.mjs' 'tests/pantheon/*.mjs' 'tests/eval/*.mjs'",
"test:install": "PANTHEON_RUN_INSTALL_TESTS=1 node scripts/run-node-tests.mjs --label 'test:install' 'tests/install-opencode.test.mjs' 'tests/install-e2e.test.mjs'",
"coverage": "echo 'Node coverage (report-only, NO threshold is enforced).' && echo 'Covers: the .mjs/.js modules under scripts/, src/ and bin/ that test:node exercises.' && echo 'Does NOT cover: test:ts (hand-rolled tsx loop, no node --test runner) and test:ci (pytest).' && echo ' TypeScript under src/ (41 files) is therefore entirely unmeasured here.' && echo '' && node scripts/run-node-tests.mjs --label 'coverage' --exclude 'tests/install-opencode.test.mjs' --exclude 'tests/install-e2e.test.mjs' -- --experimental-test-coverage --test-coverage-include='scripts/**/*.mjs' --test-coverage-include='src/**/*.mjs' --test-coverage-include='src/**/*.js' --test-coverage-include='bin/**/*.mjs' 'tests/*.mjs' 'tests/pantheon/*.mjs'",
"coverage:plugin": "node scripts/check-plugin-coverage.mjs",
"test:ts": "for f in tests/pantheon/*.test.ts; do if [ \"$f\" = tests/pantheon/plugin-contract.test.ts ]; then NODE_OPTIONS=--conditions=import tsx \"$f\"; else tsx \"$f\"; fi || exit 1; done",
"test:hooks": "node scripts/run-node-tests.mjs --label 'test:hooks' 'tests/pantheon/plugin-hook-canary.test.mjs'",
"test:tool-canary": "node scripts/run-node-tests.mjs --label 'test:tool-canary' 'tests/canary/tool-canary-support.test.mjs' 'tests/canary/plugin-tool-canary.test.mjs'",
"test:all": "npm run test:ci && npm run test:node && npm run test:ts",
"test": "npm run test:all",
"test:ci": "PANTHEON_PY=${PYTHON:-python3}; if [ -x .venv/bin/python3 ]; then PANTHEON_PY=.venv/bin/python3; fi; $PANTHEON_PY -m pytest -q --tb=short 2>&1"
},
"bin": {
"pantheon-opencode": "bin/pantheon-init.mjs"
},
"files": [
"LICENSE",
"package-lock.json",
"plugin.json",
"pyproject.toml",
"scripts/install/*.mjs",
"scripts/*.py",
"src/plugin",
"src/plugin.ts",
"README.md",
"src/mcp/*.txt",
"commands/*.md",
"pantheon.schema.json",
"skills-lock.json",
"scripts/*.sh",
"src/agents/*.md",
"!src/agents/README.md",
"bin/*.mjs",
"AGENTS.md",
"AGENTS.global.md",
"CHANGELOG.md",
"src/mcp/*.py",
"src/instructions/*.instructions.md",
"src/mcp/*.mjs",
"scripts/*.mjs",
"!scripts/build-decision-router.mjs",
"src/mcp/*.sh",
"src/routing.yml",
"src/pantheon/**",
".pantheon/code-mode/**",
"!.pantheon/code-mode/session-end-save.py",
"!.pantheon/code-mode/session-end-save.sh",
"!.pantheon/code-mode/eval-*.py",
"src/plugins/**",
"scripts/hooks/**",
"src/mcp/requirements*",
"src/plugins/tui/**",
"!src/plugins/tui/node_modules/**",
"src/skills/**",
"prompts/**",
"!**/__pycache__/**",
"!**/*.pyc"
],
"dependencies": {
"@clack/prompts": "1.8.1",
"@opencode-ai/plugin": "1.18.33",
"@opencode-ai/sdk": "1.18.33",
"js-yaml": "^5.4.2",
"zod": "4.6.6"
},
"devDependencies": {
"@biomejs/biome": "2.5.14",
"@commitlint/cli": "21.2.3",
"@commitlint/config-conventional": "21.2.3",
"@opencode/plugin": "2.2.5",
"ajv": "8.20.0",
"esbuild": "0.28.2",
"husky": "^9.1.7",
"tsx": "4.23.15",
"typescript": "7.0.2"
},
"overrides": {
"@babel/core": "7.29.7",
"seroval": "1.6.8",
"solid-js": "1.9.12",
"rolldown": "1.2.7",
"toml": "5.0.1",
"zod": "4.6.6"
},
"//overrides": "TUI production advisory fixes: Babel >=7.29.6 and Seroval >=1.6.3; zod >=4.6.6 for GHSA-mrhx-c7xc-m3w5 (@opencode-ai/plugin pins zod 4.1.8 exactly, so the override is the only way to move it, and the same entry is mirrored in src/plugins/tui/package.json for the shipped TUI lock); Solid stays at 1.9.12 to satisfy OpenTUI's exact peer. Remove only after upstream ranges include fixed versions; Seroval compatibility is covered by the Solid serializer regression test.",
"repository": {
"type": "git",
"url": "https://github.com/ils15/pantheon-opencode.git"
},
"homepage": "https://github.com/ils15/pantheon-opencode",
"bugs": {
"url": "https://github.com/ils15/pantheon-opencode/issues"
},
"keywords": [
"github",
"copilot",
"agents",
"skills",
"plugin",
"orchestration"
],
"author": "ils15",
"license": "MIT",
"engines": {
"node": ">=26.4.0"
},
"preferGlobal": true
}