-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathopencode.json
More file actions
140 lines (140 loc) · 4.47 KB
/
Copy pathopencode.json
File metadata and controls
140 lines (140 loc) · 4.47 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
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"context7": {
"type": "local",
"command": ["npx", "-y", "@upstash/context7-mcp@4.0.2"]
},
"next-devtools": {
"type": "local",
"command": ["npx", "-y", "next-devtools-mcp@0.4.0"]
},
"playwright": {
"type": "local",
"command": ["npx", "-y", "@playwright/mcp@0.0.79", "--browser", "chromium"]
},
"prisma": {
"type": "local",
"command": ["npx", "prisma", "mcp"]
},
"maildev": {
"type": "local",
"command": ["node", "node_modules/@sdk-e/mailbox/dist/bin/mailbox-mcp.js"]
},
"humanizer": {
"type": "local",
"command": ["node", "--import", "tsx", "packages/tooling/src/mcp/humanizer-mcp.ts"]
},
"bg-remove": {
"type": "local",
"command": ["node", "--import", "tsx", "packages/tooling/src/mcp/background-remover-mcp.ts"]
},
"gh_grep": {
"type": "remote",
"url": "https://mcp.grep.app"
}
},
"skills": {
"paths": [".agents/skills"]
},
"references": {
"docs": {
"path": "docs",
"description": "Project docs: conventions (structure, env), architecture, ADRs, design system (design/), content standards + claims rules (content/). Consult before writing code or copy."
}
},
"formatter": {
"prettier": { "disabled": true },
"custom-prettier": {
"command": ["npx", "prettier", "--write", "$FILE"],
"extensions": [".ts", ".tsx", ".js", ".jsx", ".json", ".css", ".md", ".mdx", ".yml", ".yaml"]
}
},
"compaction": {
"auto": true,
"threshold_percent": 65,
"prune": true,
"tail_turns": 10
},
"permission": {
"bash": {
"*": "allow",
"npm *": "allow",
"pnpm exec *": "allow",
"node *": "allow",
"python3 *": "allow",
"git status *": "allow",
"git diff *": "allow",
"git log *": "allow",
"git show *": "allow",
"git fetch *": "allow",
"git pull *": "allow",
"git push *": "allow",
"git add *": "allow",
"git commit *": "allow",
"git checkout *": "allow",
"git branch *": "allow",
"git remote *": "allow",
"git stash *": "allow",
"git restore *": "allow",
"git push --force *": "deny",
"git push --force-with-lease *": "deny",
"git push -f *": "deny",
"git reset --hard *": "deny",
"git clean *": "deny",
"pnpm exec prisma migrate deploy*": "deny",
"pnpm exec prisma migrate reset*": "deny",
"pnpm exec prisma db push*": "allow",
"pnpm exec prisma db execute*": "allow",
"pnpm exec prisma migrate dev*": "allow",
"pnpm exec prisma migrate status*": "allow",
"psql *": "deny",
"rm -rf *": "deny",
"rm -fr *": "deny",
"rm -r -f *": "deny",
"rm -f -r *": "deny",
"rm --recursive *": "deny",
"rm -r *": "allow",
"grep *": "deny",
"cat *": "deny",
"sed *": "deny",
"head *": "deny",
"tail *": "deny",
"awk *": "deny"
},
"websearch": "allow",
"webfetch": "allow"
},
"tool_output": {
"max_lines": 200,
"max_bytes": 8192,
"per_tool": {
"read": { "max_lines": 500 },
"grep": { "max_lines": 100 },
"bash": { "max_lines": 200 },
"task": { "max_lines": 300 }
}
},
"command": {
"typecheck": {
"description": "Run the TypeScript compiler and fix any errors",
"template": "Run `pnpm run typecheck` and fix every type error it reports, following `docs/conventions/structure.md`."
},
"migrate": {
"description": "Create and apply a Prisma migration",
"template": "Create a Prisma migration named \"$ARGUMENTS\" using the prisma-next-migrations skill. Inspect the resolved database target first; do not apply to a remote or shared database without explicit user authorization. Review every migration line, then run `pnpm exec prisma migrate dev --name $ARGUMENTS` and `pnpm exec prisma generate`."
},
"test": {
"description": "Run the Vitest suite and fix failures",
"template": "Run `pnpm run test:run` and fix every failing test."
},
"verify": {
"description": "Run the complete deterministic project verification",
"template": "Run `pnpm run verify`, fix repository-controlled failures, and report the exact commands and results."
},
"deploy": {
"description": "Deploy to Vercel",
"template": "Deploy the app to Vercel using the deploy-to-vercel skill and report the deployment URL."
}
}
}