Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion omega/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -282,7 +282,7 @@ Dashboard または Agents Window から環境を再 Build する。
## 由来

- `genai/` — Next.js / Supabase コーディング規約
- `plugins-main/pstack/` — エンジニアリングワークフロー([cursor/plugins](https://github.com/cursor/plugins) のミラー **0.15.15**、`poteto-*` は `forge-*` に改名)。omega の forge 系は **0.15.15 相当**を統合方針に沿って port(genai 差し替え・Intent gate・日本語ガイドは omega 独自)
- `plugins-main/pstack/` — エンジニアリングワークフロー([cursor/plugins](https://github.com/cursor/plugins) のミラー **0.15.25**、`poteto-*` は `forge-*` に改名)。omega の forge 系は **0.15.25 相当**を統合方針に沿って port(genai 差し替え・Intent gate・日本語ガイドは omega 独自)
- `yomiyasu/` — AI 生成日本語の推敲([nanaism/yomiyasu](https://github.com/nanaism/yomiyasu) を **git submodule**)。Cursor 向けは `omega/skills/yomiyasu/` に抜粋同梱。同期: `scripts/sync-from-upstream.sh`([README.md](../README.md))
- `mattpocock-skills/` — [mattpocock/skills](https://github.com/mattpocock/skills/tree/main/skills) の `skills/` ミラー(repo 直下。omega 更新は上流 main を直接参照可)。omega 採用: **`grilling`** / **`grill-me`**、`tdd`、`teach`(ワークスペース部)、**`diagnosing-bugs`**、**`domain-modeling`**。grilling 同期: `omega/skills/grilling/scripts/sync-from-upstream.sh` + 各スキル `references/UPSTREAM.md`

Expand Down
30 changes: 9 additions & 21 deletions omega/scripts/port-pstack-skills.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,9 @@
ROOT = Path(__file__).resolve().parents[2]
PSTACK = ROOT / "plugins-main/pstack/skills"
OMEGA = ROOT / "omega/skills"
# Upstream uses poteto-mode; omega uses forge-mode.
MODE_UPSTREAM = "poteto-mode"
MODE_OMEGA = "forge-mode"

REPLACEMENTS: list[tuple[str, str]] = [
(r"~/.cursor/rules/pstack-models\.mdc", "~/.cursor/rules/forge-models.mdc"),
Expand Down Expand Up @@ -47,22 +50,8 @@

SKIP_PLAYBOOKS = {"opening-a-pr.md"}

WORKFLOW_SKILLS = [
"architect",
"swarm",
"how",
"why",
"reflect",
"recall",
"teach",
"automate-me",
"bro",
"figure-it-out",
"tdd",
"blast-radius",
"maintain-verification-skill",
"create-verification-skill",
]
# omega ワークフロー SKILL.md は日本語を正とする。上流からの SKILL 本文は手マージ(本スクリプトでは上書きしない)。
WORKFLOW_SKILLS: list[str] = []


def port_text(text: str) -> str:
Expand All @@ -85,16 +74,16 @@ def copy_ported(src: Path, dst: Path) -> None:

def main() -> None:
# Playbooks (except opening-a-pr)
pb_src = PSTACK / "forge-mode/playbooks"
pb_dst = OMEGA / "forge-mode/playbooks"
pb_src = PSTACK / MODE_UPSTREAM / "playbooks"
pb_dst = OMEGA / MODE_OMEGA / "playbooks"
for path in sorted(pb_src.glob("*.md")):
if path.name in SKIP_PLAYBOOKS:
continue
copy_ported(path, pb_dst / path.name)

# Scripts tree
scripts_src = PSTACK / "forge-mode/scripts"
scripts_dst = OMEGA / "forge-mode/scripts"
scripts_src = PSTACK / MODE_UPSTREAM / "scripts"
scripts_dst = OMEGA / MODE_OMEGA / "scripts"
if scripts_src.is_dir():
for path in scripts_src.rglob("*"):
if path.is_dir():
Expand All @@ -106,7 +95,6 @@ def main() -> None:
for ref in (PSTACK / "architect/references").glob("*.md"):
copy_ported(ref, OMEGA / "architect/references" / ref.name)

# Workflow SKILL.md files
for name in WORKFLOW_SKILLS:
src = PSTACK / name / "SKILL.md"
if src.is_file():
Expand Down
4 changes: 3 additions & 1 deletion omega/skills/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,9 @@ Next.js / Supabase プロジェクト向けの書き方・配置規約。
| `diagnosing-bugs` | 難しいバグ・性能退行の診断ループ(feedback loop 優先) |
| `domain-modeling` | `GLOSSARY.md` / ADR でドメインモデルを能動的に磨く |
| `recall` | チャット履歴からコンテキスト再構築 |
| `ketchup` | このチャットでユーザー最後のメッセージ以降を平易にキャッチアップ(action item ごとに判断材料) |
| `ketchup` | このチャットでユーザー最後のメッセージ以降を平易にキャッチアップ(画像・図・action item ごとに判断材料) |
| `sharpen` | 着手前に専門家視点・本当のゴール・指示の過不足を研ぐ(手動専用) |
| `in-your-own-words` | ユーザーのゴールと問題を自分の言葉で言い直す(Align 補助・手動専用) |
| `teach` | 学習ワークスペース(lessons)または変更・サブシステムの説明(`how` + `why`) |
| `automate-me` | チャット履歴と質問から personal `-mode` スキルを起草・更新 |
| `bro` | 直前のエージェント返信を専門用語なしで言い直す |
Expand Down
4 changes: 3 additions & 1 deletion omega/skills/forge-help/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -54,10 +54,12 @@ disable-model-invocation: true
|---|---|
| 厳密な非自明タスク | [`/forge-mode`](../forge-mode/SKILL.md) |
| 何を・なぜ・用語(Align) | [`/plan-interview`](../plan-interview/SKILL.md) |
| ゴールを自分の言葉で言い直す(Align 補助) | [`/in-your-own-words`](../in-your-own-words/SKILL.md) |
| 着手前にタスクを研ぐ | [`/sharpen`](../sharpen/SKILL.md) |
| コードの動き・配置 | [`/how`](../how/SKILL.md) |
| 設計 rationale・経緯 | [`/why`](../why/SKILL.md) |
| 最近のチャットから文脈 | [`/recall`](../recall/SKILL.md) |
| このチャットで最後の自分のメッセージ以降をキャッチアップ(各 action item の判断材料付き) | [`/ketchup`](../ketchup/SKILL.md) |
| このチャットで最後の自分のメッセージ以降をキャッチアップ(画像・図・各 action item の判断材料) | [`/ketchup`](../ketchup/SKILL.md) |
| 仕組み・経緯を人向けに説明 | [`/teach`](../teach/SKILL.md)(`how` + `why`) |
| 個人の `-mode` スキルを生成・更新 | [`/automate-me`](../automate-me/SKILL.md) |
| 直前の返信を平易に言い直す | [`/bro`](../bro/SKILL.md) |
Expand Down
2 changes: 2 additions & 0 deletions omega/skills/forge-mode/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -165,6 +165,8 @@ forge-mode から他スキル・コマンドへ委譲するときの参照。

**すべての `Task` 呼び出しのデフォルト。** `run_in_background: true`、agent mode(readonly は MCP を strip)、インライン context ではなく file pointer、ロールごとの明示的 model(`/setup-forge` または `forge-models.mdc`。行を削除するとスキル内デフォルトにフォールバック。デフォルト: コード系は `cursor-grok-4.6-medium`、散文・判断は `claude-opus-5.5-thinking-medium`)。難度で tier 分け。横断設計・並行・微妙なアルゴリズムは **`hardest tasks`** 行(無ければ judgment と同じ)。些末な mechanical 編集は fast コードモデル。ルーティングスキル(`how`、`why`、`reflect`、`swarm`、`architect`)は各 SKILL のロール行が `forge-models.mdc` を上書き。`inherit` のロールは Task の `model` を省略し親モデルで走る。

**仕事に合わせて model を選ぶ。** 各 spawn の前にロール行または default から始め、仕事に要る reasoning level と fast / standard を選ぶ。`/setup-forge` の budget は各ロールの開始 level(default xhigh)。最難・最微妙な work は 1 段上げ(max まで)。判断は 1 段下げ、ルーティンは 2 段以上下げ。fast mode は urgent だけ(CI か trunk が赤、人が結果で止まっている)。それ以外は standard(同 family で `-fast` なし)。verification は例外で `swarm workers` の model と speed を維持。変えるのは effort level と fast かどうかだけ。family はロールが名指すものを保ち diverse panel は diverse のまま。level と speed に slug が無ければ最も近い slug。`inherit` は親 model のまま。Task が調整後 slug を拒否したら別の調整 slug は試さない。ロール行または default に戻しそう言う。

サブエージェントの作業はすべて自分が所有する。diff をレビューし自分の要約を書く。言ったことをそのまま通さない。セカンドオピニオンは別モデルに同じプロンプト。一致は high-signal。

**デフォルトは fresh subagent。** 新しい work は consolidated scope(元 brief、後続 directive、前 agent の report と branch)を渡した fresh subagent に任せる。fix round、follow-up、retry、次の queue 項目も同様。既存 subagent の resume / message / queue follow-up は、移すコストが高い state だけ(local checkout、未 commit 変更、その agent がまだ動かす process:dev server、simulator、babysit watcher)。running agent への stop / hold は reuse ではない。PR owner などの role は agent より長生きし、return 後は fresh agent が次の round を取る。interrupt 連鎖 resume は directive を黙って drop するので、「完了」要約を信じず fresh を起動する。
Expand Down
Loading