mirror of
https://github.com/LerianStudio/ring
synced 2026-04-21 21:47:49 +00:00
Move OpenCode runtime plugin and installer into Ring monorepo under platforms/opencode/. The installer reads skills, agents, and commands directly from the Ring monorepo's canonical directories (default/, dev-team/, pm-team/, etc.) — zero asset duplication. What's included: - installer.sh: reads from Ring dirs, applies frontmatter/tool transforms, installs to ~/.config/opencode/ - plugin/: TypeScript runtime (RingUnifiedPlugin) with hooks, lifecycle, loaders - src/: CLI (doctor, config-manager) - prompts/: session-start and context-injection templates - standards/: coding standards (from dev-team/docs/) - ring.jsonc: default config with full 86-skill/35-agent/33-command inventory What's NOT included (intentionally): - assets/ directory: eliminated, content comes from Ring monorepo - scripts/codereview/: eliminated, replaced by mithril - using-ring-opencode skill: uses canonical using-ring instead Transforms applied by installer: - Agent: type→mode, strip version/changelog/output_schema/input_schema - Skill: keep name+description frontmatter, body unchanged - Command: strip argument-hint (unsupported by OpenCode) - All: normalize tool names (Bash→bash, Read→read, etc.) - All: strip Model Requirement sections from agents Replaces: LerianStudio/ring-for-opencode repository Generated-by: Gandalf AI-Model: claude-opus-4
57 lines
1.1 KiB
JSON
57 lines
1.1 KiB
JSON
{
|
|
"$schema": "https://biomejs.dev/schemas/2.3.11/schema.json",
|
|
"assist": { "actions": { "source": { "organizeImports": "on" } } },
|
|
"linter": {
|
|
"enabled": true,
|
|
"rules": {
|
|
"recommended": true,
|
|
"suspicious": {
|
|
"noExplicitAny": "warn"
|
|
},
|
|
"style": {
|
|
"noNonNullAssertion": "warn",
|
|
"useConst": "error"
|
|
},
|
|
"complexity": {
|
|
"noForEach": "off"
|
|
}
|
|
}
|
|
},
|
|
"formatter": {
|
|
"enabled": true,
|
|
"indentStyle": "space",
|
|
"indentWidth": 2,
|
|
"lineWidth": 100
|
|
},
|
|
"javascript": {
|
|
"formatter": {
|
|
"quoteStyle": "double",
|
|
"semicolons": "asNeeded"
|
|
}
|
|
},
|
|
"files": {
|
|
"includes": [
|
|
"**",
|
|
"!**/node_modules",
|
|
"!**/dist",
|
|
"!**/.references",
|
|
"!**/.opencode/state",
|
|
"!**/*.md",
|
|
"!**/*.json",
|
|
"!**/*.schema.json",
|
|
"!**/testdata"
|
|
]
|
|
},
|
|
"overrides": [
|
|
{
|
|
"includes": ["assets/skill/visual-explainer/templates/**/*.html"],
|
|
"linter": {
|
|
"rules": {
|
|
"complexity": {
|
|
"noImportantStyles": "off"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|