AltimateAI / AltimateAI/altimate-code

Workspace awareness prompt says nothing about bridge-served extension tools

オープン
#1,263 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る
主要言語
TypeScript
スター
811
フォーク
134
平均マージ
3日 2時間
マージ済み PR(30日)
50

説明

## Gap

The `## Workspace integrations` system-prompt section (`packages/opencode/src/altimate/workspace/awareness.ts`) tells the model which workspace-served warehouse capabilities to route to `datamate_*` tools — but it projects only the three warehouse capabilities per connection type (`servedInventory()`). Extension-type integrations served over a live IDE bridge (the dbt project tools and sql-tools keys) never enter the section, so the model is not told those tools exist, when they are usable, or when to prefer them over guessing.

AltimateAI/altimate-code#1236 fixed the same staleness on the presentation surfaces (`list-integrations`, declared counts) using the read-only `liveBridge()` probe; this issue is the model-facing half it deliberately left out of scope.

## Proposed shape

Mirror the presentation semantics in the awareness render:

- **Bridge live for the project** → append a compact block naming the extension-type integrations and their tool groups, "served while VS Code with the Altimate extension is open on this project". Group by integration; never enumerate all 18 keys.
- **No live bridge** (none, or dead sidecar pids) → render nothing extra; the section stays byte-identical to today's output.

Invariants to preserve from the original awareness design: purely additive render; byte-identical prompt for unlinked projects and every silent disabled state; `MAX_SECTION_CHARS` enforced with the extension block participating in the drop order; bridge state read at the same per-step snapshot point so the section can never advertise tools routing would refuse.

コントリビューションガイド

コントリビューションガイドを開く

調査の方向性

Start in packages/opencode/src/altimate/workspace/awareness.ts, tracing servedInventory() and the per-step snapshot used to render ## Workspace integrations; then compare the liveBridge() semantics used by list-integrations and declared counts. Done when a live project bridge adds grouped extension integrations with the required VS Code wording, while no bridge preserves byte-identical output and MAX_SECTION_CHARS and drop ordering remain enforced.

索引モデルが issue の本文から書いたものです。

評価

技術スタック
typescript, vscode
領域
ai, data-engineering, developer-experience
issue の種類
機能追加
難易度
3/5
見積もり時間
1〜2日
活発さ
活発
明瞭さ
おおむね明確
初心者へのやさしさ
72/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。