Open-source release of MAESTRO, an agent orchestration platform that runs LLM-driven tasks through sandboxed tools, with a web UI. Apache-2.0. See README.md and docs/ (getting-started, configuration, architecture).
44 lines
1.9 KiB
Markdown
44 lines
1.9 KiB
Markdown
# UpdateDashboardWidget
|
|
|
|
ユーザーの個人ダッシュボード (Side Info Panel) の Markdown widget を upsert するツール。
|
|
|
|
## いつ使う
|
|
|
|
- ユーザーから「ダッシュボードにメモして」「news タブを更新して」などと頼まれたとき
|
|
- 長期的に残したい情報 (ニュース要約、TODO、参照リンク) を残すよう指示されたとき
|
|
- 1 タスク内の一時メモには使わない (それは task のコメントに書く)
|
|
|
|
## 引数
|
|
|
|
| name | required | 説明 |
|
|
|---|---|---|
|
|
| `slug` | yes | Widget の安定 ID。kebab-case (`memo`, `news`, `todo`)、32 文字以内 |
|
|
| `content` | yes | Markdown 本文。64KB まで |
|
|
| `title` | 新規 slug では必須 | 表示タイトル。既存 slug を更新するときは省略可(既存タイトル維持) |
|
|
| `mode` | optional | `replace` (default) または `append` |
|
|
|
|
## 挙動
|
|
|
|
- 同じユーザーの `slug` が既に存在 → 更新
|
|
- 存在しない → 新規作成 (title 必須)
|
|
- `mode='append'` → 既存 content の末尾に `\n\n` 区切りで追記
|
|
|
|
## ワークフロー例
|
|
|
|
「最新のテック関連ニュースを news タブにまとめておいて」:
|
|
|
|
1. `WebFetch` などでニュースを収集
|
|
2. Markdown でまとめて
|
|
3. `UpdateDashboardWidget({ slug: "news", title: "ニュース", content: "<markdown>" })` を呼ぶ
|
|
4. ユーザーには「ダッシュボードの news タブに反映しました」と返す
|
|
|
|
## gotcha
|
|
|
|
- `slug` は user スコープでユニーク。他ユーザーの slug と衝突は起きない
|
|
- 書き込み先は実行中タスクの owner の dashboard。共有タスクでも他人の dashboard には書かない
|
|
- 1 度書いた slug の title は更新できない (新しいタイトルにしたい場合は UI から行うか、新 slug を切る)
|
|
- 64KB を超える content は失敗する → 古いログを切り詰めるか、append ではなく replace でローテーション
|
|
|
|
## 関連
|
|
|