1.8 KiB
TODO
ok we need to work towards a launch of v2 so we can get out of this rebuild phase
Kill Hono - Kit
Hono needs to go away so zod can go away. this is almost done
New Data Mode - Dax
This is mostly done. I'm working through modeling subagents, skill invocations and shell commands.
Rework agent loop - Kit?
I think this needs to be done so we can take advantage of the simpler data model. It can stop doing all the
Rework compaction - Aiden?
The new agent loop needs to trigger compaction properly
Plugin API design - James?
We need to figure out how we want server plugins to work and what hooks are useful.
Some ideas:
- plugins get immer drafts so bad mutations can be thrown away
- plugins get global "opencode" instance like in that post i showed
- opencode instance has stuff like
opencode.session.prompt()oropencode.tool.register({...})
Rework Config - ???
We should do another pass on config to clean up any mistakes we made with it and simplify as much as possible. Old configs should get auto-converted to new
Auth - ???
I have a basic auth system that can track any kind of auth, not just providers
Model Database - ???
I have a basic model service that allows for models to be registered dynamically
Provider - ???
Providers should register as plugins and autoload based on whatever logic they want / config. They should register models into model database
Event - Kit
I have this v2/event.ts but it needs to be self contained instead of using the old bus system
Everything is hotreloadable - ???
Instead of needing to tear down things when something changes every service should emit granular events so services can react to them and reconfigure themselves. Allows frontend to receive these too, eg model.added. also prevents startup from blocking