mirror of
https://github.com/AgentSeal/codeburn.git
synced 2026-05-16 19:44:14 +00:00
Some checks are pending
CI / semgrep (push) Waiting to run
* Add IBM Bob provider * Add workspace extraction for Cline-family providers Extract project name from workspace directory in api_conversation_history.json so sessions show actual folder names instead of the provider display name. Thread projectPath through ParsedProviderCall to avoid unsanitizePath mangling hyphenated folder names. --------- Co-authored-by: ozymandiashh <234437643+ozymandiashh@users.noreply.github.com> Co-authored-by: iamtoruk <hello@agentseal.org>
2.7 KiB
2.7 KiB
IBM Bob
IBM Bob IDE task history.
- Source:
src/providers/ibm-bob.ts - Loading: eager (
src/providers/index.ts) - Test:
tests/providers/ibm-bob.test.ts
Where It Reads From
IBM Bob stores IDE task history below User/globalStorage/ibm.bob-code/tasks/ in the application data directory.
Default paths checked:
| Platform | Paths |
|---|---|
| macOS | ~/Library/Application Support/IBM Bob/User/globalStorage/ibm.bob-code/, ~/Library/Application Support/Bob-IDE/User/globalStorage/ibm.bob-code/ |
| Windows | %APPDATA%/IBM Bob/User/globalStorage/ibm.bob-code/, %APPDATA%/Bob-IDE/User/globalStorage/ibm.bob-code/ |
| Linux | $XDG_CONFIG_HOME/IBM Bob/User/globalStorage/ibm.bob-code/, $XDG_CONFIG_HOME/Bob-IDE/User/globalStorage/ibm.bob-code/ with ~/.config fallback |
The Bob-IDE paths cover the preview-era app name that some installs used before the GA IBM Bob directory.
Storage Format
Each task is a directory under tasks/<task-id>/ and must contain ui_messages.json.
CodeBurn parses the same Cline-family UI event format used by Roo Code and KiloCode:
ui_messages.jsonentries withtype: "say"andsay: "api_req_started"contain serialized token/cost metrics.ui_messages.jsonuser text entries seed the turn's first user message.api_conversation_history.jsonis optional and is used to extract the selected model from<model>...</model>environment details when present.task_metadata.jsonmay exist upstream, but CodeBurn does not need it for usage math today.
If no model tag is present, the parser uses ibm-bob-auto, which is priced through the same conservative Sonnet fallback used for Cline-family auto modes.
Caching
None at the provider level.
Deduplication
Per <providerName>:<taskId>:<apiRequestIndex> via vscode-cline-parser.ts.
Quirks
- IBM Bob has shipped under both
IBM BobandBob-IDEapplication data folder names. - This provider intentionally covers the IDE task-history format. Bob Shell's
~/.bobcheckpoint data is a separate storage surface and is not parsed until we have a stable usage schema fixture. - The shared Cline parser does not currently extract individual tool names from UI messages, so tool breakdowns are empty for IBM Bob just like Roo Code and KiloCode.
When Fixing A Bug Here
- Check whether the install uses
IBM BoborBob-IDEas the application data directory. - Confirm the task folder still contains
ui_messages.jsonandapi_conversation_history.json. - If the UI message schema changed, add a focused fixture to
tests/providers/ibm-bob.test.ts. - If the change also affects Roo Code or KiloCode, update
src/providers/vscode-cline-parser.tsand run all three provider test files.