Skip to content

fix(teammode): degrade when thread tools are unavailable#102

Closed
JSap0914 wants to merge 1 commit into
code-yeongyu:mainfrom
JSap0914:fix/teammode-tool-preflight-101
Closed

fix(teammode): degrade when thread tools are unavailable#102
JSap0914 wants to merge 1 commit into
code-yeongyu:mainfrom
JSap0914:fix/teammode-tool-preflight-101

Conversation

@JSap0914

@JSap0914 JSap0914 commented Jul 3, 2026

Copy link
Copy Markdown

Summary

  • Gate teammode guidance on the durable Codex thread tools it actually needs.
  • Add a degraded non-team path for implementation requests when create/read/send thread tools are unavailable, so the agent does not stop with no code changed just because the user mentioned teammode.
  • Preserve the invariant that real team members must be real Codex threads, not spawned subagents.

Fixes #101.

Verification

  • bun test plugins/omo/components/teammode/test/*.test.ts
  • npm test
  • npm --prefix plugins/omo/components/teammode run typecheck

Summary by cubic

Degrades teammode to a non-team workflow when Codex thread tools are unavailable, so implementation continues instead of stopping, and preserves the rule that team members must be real Codex threads. Fixes #101.

  • Bug Fixes
    • Added runtime tool preflight to SKILL.md: require create/read/send thread tools; if missing, explain unavailability and continue with the best non-team workflow (no fake teams, no multi_agent_v1.spawn_agent as members).
    • Added test plugins/omo/components/teammode/test/skill-tool-preflight.test.ts to enforce the degraded guidance.

Written for commit 58d3ba3. Summary will update on new commits.

Review in cubic

Copilot AI review requested due to automatic review settings July 3, 2026 06:32
@github-actions

github-actions Bot commented Jul 3, 2026

Copy link
Copy Markdown
Contributor

Thanks for the PR! Changes to LazyCodex land through oh-my-openagent — could you open this against omo-codex over there instead? PRs in this repository can't be merged.

If you're working with a coding agent, prompt it like this:

I opened #102 ("fix(teammode): degrade when thread tools are unavailable") against code-yeongyu/lazycodex, but changes there land through code-yeongyu/oh-my-openagent, where the Codex implementation lives under packages/omo-codex. Read my original PR, then open an equivalent PR against code-yeongyu/oh-my-openagent. In the new PR body, link the original PR (#102), explain that it was first opened against lazycodex, and describe in detail what that PR changed and why.

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates the teammode skill guidance so it only applies when the current Codex runtime exposes the durable thread tools it depends on, and adds a degraded “non-team” execution path so implementation requests can proceed even when thread tooling is unavailable.

Changes:

  • Update teammode SKILL.md frontmatter + guidance to preflight required thread tools and degrade gracefully when missing.
  • Clarify the “real team members must be real Codex threads” invariant while avoiding “stop before any work” for ordinary implementation requests.
  • Add a regression test that pins the presence of the new degraded-path guidance in the skill doc.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.

File Description
plugins/omo/components/teammode/test/skill-tool-preflight.test.ts Adds a doc-content regression test ensuring degraded-path guidance is present.
plugins/omo/components/teammode/skills/teammode/SKILL.md Adds runtime tool preflight + degraded non-team guidance; updates strict thread-member rule and stop rules accordingly.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.


- create a thread: `codex_app.create_thread` or `create_thread`
- send to a thread: `codex_app.send_message_to_thread` or equivalent thread-send tool
- read a thread: `codex_app.read_thread` or equivalent thread-read tool
Comment on lines 1 to 4
---
name: teammode
description: "Codex-only team orchestration: run a named team of cooperating Codex threads with durable, script-managed state. MUST USE when the user asks Codex to create, run, coordinate, inspect, archive, or delete a team of threads/sessions, or to work on something as a team in parallel. The main session is always the leader; members are defined by a concrete part, ownership area, or perspective - never a vague job role; a bundled cross-platform script writes the .omo/teams state plus an auto-generated member field manual. Use a team when the work is not perfectly isolated but parallelizing helps, or when a task still needs exploration under a clear goal; use plain subagents when scope is perfectly isolated or the goal is ambiguous. Triggers: team mode, teammode, make a team, run as a team, team of agents, coordinate threads, parallel Codex threads, archive the team, delete the team."
description: "Codex-only team orchestration: run a named team of cooperating Codex threads with durable, script-managed state. Use when the user asks Codex to create, run, coordinate, inspect, archive, or delete a team of threads/sessions, or to work on something as a team in parallel, but only when the current Codex runtime exposes the required thread tools. If create/read/send thread tools are unavailable, do not stop ordinary implementation work just because the user mentioned teammode; explain that durable Codex-thread teammode is unavailable in this surface and continue with the best available non-team workflow. The main session is always the leader; members are defined by a concrete part, ownership area, or perspective - never a vague job role; a bundled cross-platform script writes the .omo/teams state plus an auto-generated member field manual. Use a team when the work is not perfectly isolated but parallelizing helps, or when a task still needs exploration under a clear goal; use plain subagents when scope is perfectly isolated or the goal is ambiguous. Triggers: team mode, teammode, make a team, run as a team, team of agents, coordinate threads, parallel Codex threads, archive the team, delete the team."
---
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

CodexApp 运行 omo:teammode 提示工具不够

2 participants