Releases: killme2008/devtap
v0.1.8
Lazy Reconnect for GreptimeDB
Previously, if GreptimeDB was unavailable at startup, devtap permanently fell back to file store until restarted.
Now devtap wraps the unavailable store in a lazy reconnect layer that retries on each drain/status call (30s cooldown). The MCP server starts immediately with file store and reconnects to GreptimeDB transparently once it recovers.
- Startup failure enters multi-source mode: file store + lazy GreptimeDB wrapper
- Cooldown errors include the original connection error for diagnostics
- Normal startup (GreptimeDB available) is unchanged
v0.1.7
Bug Fixes
- Fix session ID instability with multiple Claude Code sessions: when multiple Claude Code sessions existed for the same project,
--session autoused mtime-based discovery which picked a different session depending on timing, causingget_build_errorsto permanently return empty. Now uses deterministicsession.EncodeDir(projectDir)— consistent with all other adapters (Codex, OpenCode, Gemini, aider).
Improvements
- MCP server startup logging: prints
devtap: mcp-serve sources=N session=<id>to stderr on startup for easier debugging of session resolution issues.
Note
Existing GreptimeDB data written under old Claude Code session UUIDs won't be found with the new deterministic session ID. Use --session <old-uuid> to access historical data, or wait for TTL expiry (7d).
v0.1.6
What's New
- Successful build collapsing: runs with exit code 0 are replaced by a one-line summary (e.g.
(42 lines of output omitted — run succeeded)). Failed runs are preserved in full. Multiple runs of the same tag are evaluated independently. - Tail-biased truncation: 80% tail / 20% head (was 50/50), keeping more error content which typically appears at the end.
- Relaxed verbatim instructions: AI agents now only repeat output verbatim on failure; successful builds get a brief acknowledgment, avoiding token duplication.
v0.1.5
What's New
Skill (CLI fallback for non-MCP agents)
devtap now ships a built-in skill at skills/devtap-get-build-errors/. When the MCP server is unavailable, AI agents can invoke the bundled get_build_errors.sh script to fetch pending build output via CLI. The script checks the pending count first and only drains when messages are available.
Install by copying into your tool's skills directory:
mkdir -p ~/.claude/skills && cp -r skills/devtap-get-build-errors ~/.claude/skills/Quiet mode for status and drain
Both commands now support --quiet / -q:
devtap status -q: outputs only the total pending message count as a single number (e.g.3), useful for scripting and the skill fallbackdevtap drain -q: outputs raw build lines without[devtap: tag]headers or source banners, for agents that prefer undecorated output
Other
FormatMessagesRaw()added to themcppackage for raw line formatting without tag headers- SKILL.md documents MCP tool → CLI subcommand mapping (
get_build_status→devtap status,get_build_errors→devtap drain) - README: added skill installation instructions and
--quietflag documentation
v0.1.4
What's New
Multi-source drain
Cross-machine mode now automatically drains from both the configured remote source and the local source in a single call, deduplicating overlapping messages. Your AI coding tool sees all build output — local and remote — without extra configuration.
Messages are tagged with host/label | tag so you can tell where output came from. Both the MCP server and drain command support this.
Resilient source handling
- Partial failure: unreachable source is skipped with a stderr warning; reachable sources still drain normally
- Total failure: returns an error instead of silently returning empty output (Stop+auto-loop mode still allows stop)
- Strict store open for readers: configured remote store no longer silently falls back to local file store, which would drain wrong data — degrades to local-only with a warning instead
--max-lines 0fix: no longer skips all sources; defaults to 10000
Other
- README: added "How it works" diagram for cross-machine mode
- Instruction injection updated to document multi-source output format
v0.1.3
What's New
Cross-machine build support
devtap can now bridge build output across machines. Run builds on CI or remote dev boxes and consume errors from your local AI coding session — just point both sides at the same GreptimeDB instance and session name.
# Your laptop — install once, bakes --session and --store into MCP config
devtap install --adapter claude-code --session myproject --store greptimedb
# CI server — capture build output
devtap --store greptimedb --session myproject -- makeMultiple build machines can write to the same session simultaneously.
Changes
devtap installnow forwards--sessionand--storeto MCP config — the flags are written into.mcp.json/config.toml/opencode.json/.gemini/settings.jsonso the MCP server automatically uses the right store and session. For Claude Code auto-loop, the Stop hook drain command also receives these flags. (#feat)--sessionaccepts explicit names — in addition to"auto"and"pick", you can pass any string as a session name, enabling cross-machine use where path-based auto-detection doesn't apply.- Improved GC for empty directories —
allFilesOlderThannow checks directory mtime for empty dirs, preventing premature cleanup of freshly created adapter directories. (#feat) - README improvements — added cross-machine builds section, updated CLI reference, added remote CI as a problem statement.
v0.1.2
v0.1.1
The true first edition of Devtap 💯