YeonGyu-Kim
909ce37826
fix: remove --ignore-scripts from bun install, add build verification step
2025-12-05 04:19:13 +09:00
YeonGyu-Kim
132bb3c373
fix: add --ignore-scripts to npm publish to prevent CI build failure
2025-12-05 04:16:53 +09:00
YeonGyu-Kim
180d16b977
fix: prevent plugin crash by removing non-function exports from barrel files
...
BREAKING: OpenCode plugin loader calls all exports as functions.
Exporting non-function values (schemas, constants, types) causes TypeError.
Changes:
- Remove OhMyOpenCodeConfigSchema export from root index.ts
- Replace 'export *' with explicit function exports in hooks/index.ts
- Remove 'export *' from comment-checker/index.ts
2025-12-05 04:08:59 +09:00
YeonGyu-Kim
eba89a6626
hotfix: move McpNameSchema to src/mcp/types.ts for proper module organization
2025-12-05 03:58:21 +09:00
YeonGyu-Kim
0a82787614
hotfix: use McpName from config schema instead of duplicate type definition
2025-12-05 03:56:14 +09:00
YeonGyu-Kim
a1a2d2fdb3
hotfix: add empty content message recovery to session recovery
2025-12-05 03:54:51 +09:00
github-actions[bot]
2c57204142
release: v0.1.2
2025-12-04 18:12:17 +00:00
YeonGyu-Kim
4dadd51fe7
fix: upgrade to node 24 and npm@latest for OIDC trusted publishing (requires npm 11.5.1+)
2025-12-05 03:11:52 +09:00
YeonGyu-Kim
c4d247a8df
fix: use npm config instead of registry-url for OIDC tokenless publishing
2025-12-05 03:09:09 +09:00
YeonGyu-Kim
10591cb1ff
fix: restore registry-url for OIDC auth
2025-12-05 03:05:39 +09:00
YeonGyu-Kim
80a7f56066
fix: remove registry-url to enable OIDC trusted publishing
2025-12-05 03:01:52 +09:00
YeonGyu-Kim
02e00873a0
fix: add NODE_AUTH_TOKEN for npm publish
2025-12-05 02:59:58 +09:00
YeonGyu-Kim
41918af852
fix: move build step to workflow to avoid PATH issues
2025-12-05 02:58:27 +09:00
YeonGyu-Kim
a3cea59001
fix: use bun run for publish script execution
2025-12-05 02:56:58 +09:00
YeonGyu-Kim
508a761385
add missing constants
2025-12-05 02:56:32 +09:00
YeonGyu-Kim
2e327e9b7a
feat(config): integrate Zod schema validation into config loading
...
- Replace type assertion with safeParse validation
- Add error reporting for invalid config values
- Import types from centralized config module
2025-12-05 02:54:09 +09:00
YeonGyu-Kim
b5274fcb63
feat(config): add Zod schema validation and JSON Schema generation
...
- Add Zod schema for oh-my-opencode.json configuration validation
- Generate JSON Schema at build time for IDE autocompletion
- Add safeParse validation with error reporting on config load
- Export OhMyOpenCodeConfigSchema for programmatic usage
- Add build:schema script and ./schema.json export
- Update README with $schema usage documentation
2025-12-05 02:53:44 +09:00
YeonGyu-Kim
8e5064c547
docs: add comment-checker hook documentation
2025-12-05 02:53:38 +09:00
YeonGyu-Kim
02a9402472
feat(hooks): add comment-checker hook for detecting unnecessary comments
...
- Port Go comment-checker to TypeScript using web-tree-sitter
- Support 38 programming languages via tree-sitter-wasms
- Filter out valid comments: BDD patterns, lint directives, docstrings, shebangs
- Integrate with OpenCode's tool.execute.before/after hooks
- Attach feedback to Write/Edit/MultiEdit tool output
2025-12-05 02:49:47 +09:00
YeonGyu-Kim
22acb0def1
feat(agents): add agent override configuration support
...
- Add AgentName, AgentOverrideConfig, AgentOverrides types
- Implement createBuiltinAgents with disabled_agents and overrides support
- Support oh-my-opencode.json config for:
- disabled_agents: disable specific built-in agents
- agents: override model, temperature, tools, permission per agent
- Tools and permission objects are shallow-merged with base config
- Export types for external consumers
- Update README with agent override documentation
2025-12-05 02:32:33 +09:00
YeonGyu-Kim
6220fcddcf
feat(mcp): add context7 MCP and disabled_mcps config support
...
- Add context7 MCP for library documentation lookup
- Add oh-my-opencode.json config file support for per-project settings
- Support disabled_mcps array to selectively disable built-in MCPs
- Update documentation with Configuration section
2025-12-05 02:23:34 +09:00
YeonGyu-Kim
6495fae979
feat(mcp): add websearch_exa as built-in MCP
...
- Add src/mcp/ directory with websearch_exa configuration
- Configure Exa AI remote MCP (https://mcp.exa.ai/mcp )
- Export builtinMcps from plugin config
- Update documentation (EN/KO) with Built-in MCPs section
2025-12-05 02:15:39 +09:00
YeonGyu-Kim
7ac580566a
feat(hook): add session-recovery for automatic API error recovery
2025-12-05 02:12:52 +09:00
YeonGyu-Kim
542c9c39b7
fix: externalize @ast-grep/napi for cross-platform support, add installation docs
2025-12-05 01:50:02 +09:00
YeonGyu-Kim
7fc2ce62dd
feat: add npm publish workflow with Trusted Publishing
2025-12-05 01:38:04 +09:00
YeonGyu-Kim
ed1a5ed466
rewrite READMEs
...
No Vibe Writings.
2025-12-05 01:20:57 +09:00
YeonGyu-Kim
3802587b72
config(safe-grep): increase timeout from 60s to 5 minutes
2025-12-05 01:20:50 +09:00
YeonGyu-Kim
2a9761b0b0
refactor(tools): remove unused ast-grep tools (languages, analyze, transform)
2025-12-05 01:20:45 +09:00
YeonGyu-Kim
3d29214c29
refactor: move grep blocking from hook to config
2025-12-05 01:19:15 +09:00
YeonGyu-Kim
ff3a7bfee0
refactor(tools): rename all tools to snake_case for consistency
2025-12-04 23:01:16 +09:00
YeonGyu-Kim
f78bdf6f67
feat(tools): wire up new LSP and ast-grep tools in builtin exports
2025-12-04 22:40:40 +09:00
YeonGyu-Kim
eac197581c
feat(tools): add ast-grep tools for AST-aware code search and transformation
...
- Add ast_grep_search for pattern-based code search (25 languages)
- Add ast_grep_replace for AST-aware code rewriting with dry-run
- Add ast_grep_analyze for in-memory code analysis (NAPI)
- Add ast_grep_transform for in-memory code transformation
- Add ast_grep_languages to list supported languages
2025-12-04 22:40:25 +09:00
YeonGyu-Kim
dc119bc1ed
feat(lsp): add rename, code actions, and server connection pooling
...
- Add LSPServerManager for connection pooling with idle cleanup
- Add lsp_prepare_rename and lsp_rename tools
- Add lsp_code_actions and lsp_code_action_resolve tools
- Add WorkspaceEdit types and applyWorkspaceEdit utility
- Improve LSP client robustness with stderr buffering and process state tracking
2025-12-04 22:40:05 +09:00
YeonGyu-Kim
81869ccaac
feat(lsp): add oh-my-opencode.json config support with priority
...
Config file priority (high to low):
1. ./.opencode/oh-my-opencode.json (project)
2. ~/.config/opencode/oh-my-opencode.json (user)
3. ~/.config/opencode/opencode.json (opencode)
4. builtin servers
LSP servers sorted by source then priority field (higher = preferred)
2025-12-04 21:57:18 +09:00
YeonGyu-Kim
7090fca0fd
feat(lsp): add LSP tools integration with workspace/configuration support
...
- Add 7 LSP tools: hover, goto_definition, find_references, document_symbols, workspace_symbols, diagnostics, servers
- Support multiple LSP servers: typescript, gopls, pyrefly, basedpyright, ruff, rust-analyzer, clangd, sourcekit-lsp, ruby-lsp
- Read LSP config from opencode.json with disabled server support
- Handle server requests: workspace/configuration, client/registerCapability, window/workDoneProgress/create
- Send workspace/didChangeConfiguration after initialized for basedpyright compatibility
- Uint8Array-based buffer for reliable LSP message parsing
2025-12-04 21:54:02 +09:00
YeonGyu-Kim
b397dd6655
feat(hook): block grep tool and guide to safe-grep
2025-12-04 18:20:01 +09:00
YeonGyu-Kim
8c6dc77d53
Make explore agent to be opencode/grok-code
...
Grok Code is SuperFast and free at the moment.
For the purpose of exploring existing codebase,
grok code's intelligence is just enough for that. Plus Superfast.
2025-12-04 16:19:12 +09:00
YeonGyu-Kim
b01050ab30
feat(hook): add session-notification hook for agent idle state notifications
...
- Implement createSessionNotification() for macOS/Linux/Windows notifications
- Debounce timer to confirm session still idle after 1.5s (prevents false alerts from todo-continuation)
- Skip notification if incomplete todos exist (smart coordination with todo-continuation-enforcer)
- Support cross-platform alerts (osascript, notify-send, PowerShell)
- Configurable title, message, sound, and idle confirmation delay
2025-12-04 16:19:12 +09:00
YeonGyu-Kim
9a9351a082
feat(feature): add terminal title renaming with session status
2025-12-04 16:19:12 +09:00
YeonGyu-Kim
9a11901590
feat(hook): add context window monitor for Anthropic token usage tracking
2025-12-04 16:19:12 +09:00
YeonGyu-Kim
9054973f23
feat(agent): add document-writer agent for technical documentation
2025-12-04 16:19:12 +09:00
YeonGyu-Kim
a562a78050
feat(hook): add todo-continuation-enforcer for automatic task resumption
2025-12-04 16:19:12 +09:00
YeonGyu-Kim
b6d991066e
feat(agent): add frontend-ui-ux-engineer agent for stunning UI/UX
2025-12-04 16:19:05 +09:00
YeonGyu-Kim
8febf9411f
feat: wire up agents and expose via opencode plugin
2025-12-04 16:19:05 +09:00
YeonGyu-Kim
a937239469
feat(agent): add explore agent for codebase navigation
2025-12-03 11:49:28 +09:00
YeonGyu-Kim
b39b7f119a
feat(agent): add librarian agent for codebase analysis
2025-12-03 11:49:23 +09:00
YeonGyu-Kim
4e4678ce01
feat(agent): add oracle agent for expert AI advisory
2025-12-03 11:49:18 +09:00
YeonGyu-Kim
15068ee382
chore: initialize project with bun and typescript
2025-12-03 11:49:13 +09:00
YeonGyu-Kim
5b0cb53f3d
✨ Fiat Lux
2025-12-03 11:28:10 +09:00