mirror of
https://github.com/LerianStudio/ring
synced 2026-04-21 13:37:27 +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
32 lines
623 B
TypeScript
32 lines
623 B
TypeScript
/**
|
|
* Ring Component Loaders
|
|
*
|
|
* Central export for all component loaders.
|
|
*/
|
|
|
|
// Agent loader
|
|
export {
|
|
type AgentConfig,
|
|
countRingAgents,
|
|
loadRingAgents,
|
|
} from "./agent-loader.js"
|
|
// Command loader
|
|
export {
|
|
type CommandConfig,
|
|
type CommandValidationWarning,
|
|
countRingCommands,
|
|
type LoadCommandsResult,
|
|
loadRingCommands,
|
|
} from "./command-loader.js"
|
|
// Placeholder utilities
|
|
export {
|
|
expandPlaceholders,
|
|
getOpenCodeConfigDir,
|
|
OPENCODE_CONFIG_PLACEHOLDER,
|
|
} from "./placeholder-utils.js"
|
|
// Skill loader
|
|
export {
|
|
countRingSkills,
|
|
loadRingSkills,
|
|
type SkillConfig,
|
|
} from "./skill-loader.js"
|