summaryrefslogtreecommitdiffhomepage
path: root/README.md
AgeCommit message (Collapse)Author
5 daysdocs: remove claude extension references from READMEAdam Malczewski
5 daysdocs: replace local paths with GitHub repo linksAdam Malczewski
- Web frontend section links to github.com/realtradam/dispatch-web - Claude extension links to github.com/realtradam/dispatch-adapter-claude - Workspace layout uses generic clone instructions, not /home/tradam paths - Dev stack bin/up instructions show clone-both-repos-as-siblings
5 daysdocs: rewrite README for current project stateAdam Malczewski
- Full HTTP API table (30+ endpoints: conversations, workspaces, LSP, system-prompt, metrics, queue, cache-warming, compaction, etc.) - Complete CLI commands (list, read, send, stop, compact, open + flags) - All 37 packages documented with tiers and dependencies - systemd deploy section (bin/build, bin/install, bin/sync-env) - Dev stacks table (bin/up 24203, bin/up2 25203) - Workspace layout (dispatch-backend, dispatch-web, claude, bin) - Updated web frontend section (Slice 2 browser chat in progress) - Links to all design docs
8 daysfeat(provider-umans): Umans AI Coding Plan provider + openai-stream libAdam Malczewski
Extract a generic @dispatch/openai-stream library from provider-openai-compat (convert-messages, convert-tools, parse-sse, listModels, stream, provider), parameterizing createOpenAICompatProvider with uid=1000(tradam) gid=1000(tradam) groups=1000(tradam),966(docker),968(ollama),998(wheel) + hook. Refactor provider-openai-compat to import from the lib (byte-identical behavior). New @dispatch/provider-umans extension wraps the Umans OpenAI-compatible backend (https://api.code.umans.ai/v1). Self-contained: reads UMANS_API_KEY from env directly (no auth-apikey dep). transformBody maps reasoningEffort → reasoning_effort (capping xhigh/max → high). Dynamic listModels via GET /v1/models. host-bin: registered provider-umans in CORE_EXTENSIONS + umans credential (gated on UMANS_API_KEY — the credential is the model-catalog index). Verified: tsc EXIT 0, 1059 vitest, biome clean (293 files). Boot smoke: umans models appear in GET /models (7 models live).
2026-06-06feat(frontend,wire): surface system (FE slice 1) + @dispatch/wire types-only ↵Adam Malczewski
split (B2) FE slice 1 — backend-declared, frontend-agnostic surface system (verified live): new types-only @dispatch/ui-contract (SurfaceSpec / field kinds / region / ActionRef / catalog), surface-registry (typed service handle), transport-ws (Bun WS :24205, path-agnostic upgrade), surface-loaded-extensions (first real surface); kernel HostAPI.getExtensions; host-bin wiring; bin/up. Harness: retire AGENTS 'backend only', ORCHESTRATOR §3/§7/§8, frontend-design.md locked. B2 — wire-types split (chat-slice prerequisite): new types-only @dispatch/wire single-sources the wire ABI (AgentEvent + 11 variants; conversation model Chunk/ChatMessage/Role/TurnId/StepId + 6 chunk variants; Usage) with zero @dispatch/* deps. @dispatch/kernel re-exports via shims so its public surface is byte-identical (zero consumer blast radius). transport-contract re-exports AgentEvent from @dispatch/wire and drops its @dispatch/kernel dependency, so HTTP clients (the web frontend) consume the wire without the kernel runtime. tsc -b + biome clean; 460 vitest + 77 bun pass.
2026-06-05docs: add "Depends on" column to README package tablesAdam Malczewski
2026-06-05docs: add README (server deploy, CLI usage, kernel/extension + package tables)Adam Malczewski
2026-06-04chore: scaffold monorepo + AI harness (constitution, rules, glossary, kernel ↵Adam Malczewski
stub)