@dzackgarza/improved-todowrite
v0.1.0
Published
[](https://ko-fi.com/I2I57UKJ8)
Downloads
23
Readme
improved-todowrite
This OpenCode plugin stores a hierarchical todo tree for each session and exposes tree-native read/write tools.
Install
Install the plugin from its directory:
cd /home/dzack/opencode-plugins/improved-todowrite
just installRegister the plugin in OpenCode via file::
{
"plugin": [
"file:///home/dzack/opencode-plugins/improved-todowrite/src/index.ts"
]
}See the sample local configuration: improved-todowrite/.config/opencode.json.
Verification
Verification uses the package .envrc to export OPENCODE_CONFIG. To verify the installation locally:
cd /home/dzack/opencode-plugins/improved-todowrite
direnv allow
timeout 30 /home/dzack/.opencode/bin/opencode run --agent Minimal \
"Use improved_todowrite to write one top-level todo with id=phase-1, content='Ship persistence layer', status='pending', priority='high'. Then use improved_todoread. After both tool calls finish, reply with ONLY READY."If you do not use direnv, run the following:
OPENCODE_CONFIG=/home/dzack/opencode-plugins/improved-todowrite/.config/opencode.json \
timeout 30 /home/dzack/.opencode/bin/opencode run --agent Minimal \
"Use improved_todowrite to write one top-level todo with id=phase-1, content='Ship persistence layer', status='pending', priority='high'. Then use improved_todoread. After both tool calls finish, reply with ONLY READY."MCP Installation
{
"mcp": {
"improved-todowrite": {
"type": "local",
"command": [
"uvx",
"--from",
"git+https://github.com/dzack/opencode-plugins#subdirectory=improved-todowrite/mcp-server",
"improved-todowrite-mcp"
]
}
}
}Tool Names
improved_todowrite
Use this tool to write or replace the hierarchical todo tree for the current session. Prefer this over flat todos for complex work involving phases, tasks, and subtasks.
Schema
todos:TodoTreeNode[]
TodoTreeNode:
id: stringcontent: stringstatus: stringpriority: stringchildren:TodoTreeNode[]
improved_todoread
Use this tool to read the hierarchical todo tree for the current session. This helps recover the current plan structure before extending or updating it.
Schema
{}
Dependencies
- Runtime: Bun, SQLite via
bun:sqlite,@opencode-ai/plugin - MCP wrapper: Python 3.11+,
uv,fastmcp - Shared helper:
mcp-shim/run-tool.ts
Checks
just typecheck
just test
just mcp-test