Brittle keyword router
A single matching word can inject a mandatory workflow the user did not explicitly select.
Architecture review · July 17, 2026
A plain-language explanation of why StrategyOS itself needs patching: its prompts, tool declarations, routing rules, and agent workflows do not share one accurate model of how the host AI system actually works.
Executive summary
The observed Tegy failures are symptoms of assumptions embedded in StrategyOS. It assigns tools that roles do not need, silently selects workflows from keywords, repeats incompatible rules, and assumes local Claude Code facilities exist in every host. Adding more Tegy tools would preserve the wrong contract.
A single matching word can inject a mandatory workflow the user did not explicitly select.
All 20 reviewed roles declare Bash, including reviewers and operators whose actual consulting work does not require a shell.
At least one default-on scanner also says users must opt in, and its threshold changes scale mid-prompt.
Multiple agents and checkpoints are broadly mandated before evaluations show when they improve the answer.
The repository tests packaging and helper correctness well, but not whether each role gives sound advice.
Local scripts, plugin paths, dynamic installs, and damaged text encoding do not transfer cleanly to Tegy.
Core diagnosis
The implementation shows a common weakness of AI-generated framework code: each file sounds reasonable in isolation, while the system as a whole lacks one consistent account of who chooses a workflow, which tools exist, what each role may do, and how success is measured.
AI models are effective at drafting individual prompts and files, but they can reproduce familiar framework patterns without checking whether the complete system contract holds. Generated agent infrastructure still needs an experienced technical owner to define boundaries, remove contradictions, and validate behavior across every supported host.
Bash, plugins, hooks, checkpoints, and subagents appear as generic signs of an “agentic” system even when a role or host cannot justify them.
Some instructions assume Claude Code on a local machine; others are packaged for Codex or Tegy, but the required capabilities are not translated explicitly.
Rules are repeated across files and bundles, so defaults and thresholds drift while every individual paragraph still reads confidently.
Packaging, schemas, and helper scripts can pass even when routing is wrong, a role chooses an irrelevant tool, or the consulting answer is poor.
If Tegy merely enables Bash or adds more hosted tools, it makes an incorrect StrategyOS assumption executable. The repair must begin by defining each use case, its inputs and outputs, the minimum capabilities it needs, and an end-to-end test that proves the intended result.
Worth preserving
Strategy, operations, product, GTM, M&A, critique, and delivery have understandable purposes.
Many prompts ask for assumptions, confidence, uncertainties, sources, and numerical sniff tests.
Critic and devil’s-advocate roles create a useful path for pressure-testing recommendations.
Schemas, atomic writes, and path validation are sensible where free-form model output would be fragile.
A small regular expression decides whether to inject a large mandatory workflow.
Observed
The launcher reads the user’s prompt and activates when it sees
StrategyOS, Tegy, one of four mode phrases, or the word
initiate. It then requires project initialization,
scoped agents for all analysis, checkpoints between every
round, and final review steps.
strategy[ -]?os | tegy | (heavy|med|lite|extend) mode | initiate
Why it can fail
jq, the hook searches its raw payload rather than only the prompt.The launcher treats ordinary prose as configuration. The AI model never gets to interpret the user's intent before a large workflow is selected, so the regex can confidently choose the wrong mode in both directions.
Recommended change
Use explicit product state—a selected workflow, command, UI choice, or typed request field. Treat “lite,” “medium,” and “heavy” as configuration, not words to discover in prose.
Evidence: StrategyOS launcher. The defect and its fix are visible directly in the source: workflow selection needs an explicit input contract rather than inference by shell regex.
Tool access appears inherited from a general desktop template rather than derived from each role.
Observed
All 20 canonical agent files reviewed declare Bash. Most user-facing roles receive the same broad list: file reading and writing, shell access, delegation, web access, todo management, and user-question tools.
Read, Write, Edit, Glob, Grep, Bash, Skill, Task, WebFetch, WebSearch, TodoWrite, AskUserQuestion
Why Bash is there
The most likely explanation is template inheritance, not a use-case decision. The same Claude Code-oriented tool list was copied into specialist roles, while a few helper workflows happen to call SQLite or Python. StrategyOS then treats the shell as a universal capability instead of separating those deterministic host operations from the model's consulting role. This also explains why a hosted subagent can be told to use Bash even when that execution context does not expose it.
The Operator’s job is team launch, hiring, culture, performance, and operating playbooks. A critic’s job is to read and review an artifact. General command execution is not part of those consulting outcomes.
What this breaks
What the shell-shaped work actually needs
| Current operation | Underlying need | Correct capability boundary |
|---|---|---|
| Run SQLite | Search the curated corpus | Bounded corpus query |
| Launch Python helpers | Create project state and decision records | Typed host operations |
| Inspect plugin folders | Know which providers exist | Immutable capability registry |
| Install transcription packages | Understand customer audio | Hosted transcription tool |
Evidence: Operator tools and Strategist tools. OpenAI recommends keeping the initially available function set small, evaluating different tool counts, and restricting a model to the subset relevant to the current task: Function-calling best practices and tool choice.
The same capability can be described with incompatible defaults and thresholds.
Observed example
The trusted-repository scanner says:
0.7;A model cannot satisfy both defaults and must guess how to reconcile thresholds on different scales. This is one visible example of a broader maintenance defect across many large, cross-referenced prompts.
Size alone is not a defect. The problem is repeated rules, historical commentary, and duplicated contracts that can drift independently.
Recommended change
Keep one canonical rule for each behavior, compile generated bundles from it, and add contradiction checks before release. Active role prompts should focus on role, inputs, outputs, boundaries, and success criteria.
Evidence: trusted-repository scanner. OpenAI identifies contradictions, ambiguous formats, and inconsistent examples as common prompt defects: Optimize Prompts.
Specialists can help, but every handoff introduces another decision that can go wrong.
Observed
StrategyOS defines 20 agents and dozens of skills. The launcher requires all analytical work to go through pack agents and a checkpoint between every round—even when the request may need only one answer or one specialist.
Observed failure mode
Routing, handoffs, intermediate files, and synthesis can each lose or duplicate information. They also add latency and cost. A named agent appearing in a trace does not prove that it improved the recommendation.
Recommended change
Start with the smallest architecture that can satisfy the request. Add a specialist only where an evaluation measures a distinct contribution—for example, a fresh critic that catches planted analytical errors.
OpenAI notes that multi-agent handoffs introduce additional nondeterminism and recommends making the architecture decision through evaluations: Evaluation best practices: multi-agent architectures.
Good engineering checks exist, but they do not yet demonstrate that the advice is correct.
What the tests cover well
What is not yet demonstrated
In the reviewed suite, there are no equivalent end-to-end evaluations showing that each consulting role produces a correct, evidence-backed result on realistic source material. A plugin can install correctly and still give poor advice.
Recommended acceptance standard
Evidence: Codex-native tests and helper tests. OpenAI recommends explicit objectives, representative data, metrics, comparative runs, and continuous evaluation: Evaluation best practices.
Local plugin mechanics are presented as if they were universal strategy capabilities.
Observed
Some instructions assume they can:
~/.claude/plugins and similar directories;Recommended change
Patch StrategyOS so the consulting contract is independent of any host. Then implement explicit adapters for Claude Code, Codex, and Tegy. Each adapter should declare which StrategyOS capabilities it can actually satisfy. If a capability is absent, the workflow should say so or choose a supported path; it should not improvise package installation.
This is primarily an interface-design correction inside StrategyOS. OpenAI's function-calling guidance illustrates the relevant principle: tools have explicit schemas and the application controls which subset is available for a turn: Function calling: tool choice.
The strange characters are corrupted punctuation, not Chinese-language output.
Observed
Agent files contain sequences such as —,
→, â‰, and § where
dashes, arrows, comparison signs, or section symbols were
intended. This usually happens when UTF-8 text is decoded as a
different character set.
Why it matters
Recommended change
Normalize canonical files to UTF-8, fail builds on known mojibake patterns, rebuild every generated bundle, and add a rendering test.
Evidence: Operator instructions. OpenAI's general prompting guidance emphasizes brief, clear, well-delimited instructions: Reasoning best practices.
Generic workflow templates are being applied where a direct answer would be more appropriate.
Observed
Many roles include hard gates for resource collection, project initialization, mode selection, checkpoints, rigor review, and off-ramp recommendations. The launcher can make all of these mandatory from one keyword.
Observed effect
A framework explanation, narrow critique, or factual question can become a project-management exercise before the user sees value. That can increase abandonment and make internal terminology visible to people who do not need it.
Recommended change
Keep hard gates only where missing information could materially change a consequential recommendation. Ask only blocking questions, allow direct answers for narrow tasks, and measure time-to-value and repeated-question rates by mode.
StrategyOS patch sequence
Run realistic fixtures through each supported host. Assert the selected workflow, actual tool calls, artifact, consulting correctness, usage, and cost. Add subagents only when those evaluations demonstrate a measurable improvement.
Tools, subagents, checkpoints, and files are means to a good consulting outcome. StrategyOS should request them only when a defined use case and a passing evaluation demonstrate that they are necessary; invocation alone is not success.
Sources and limitations
StrategyOS observations are pinned to commit 17afed2. OpenAI references are general agent-engineering guidance; they do not constitute an OpenAI assessment of StrategyOS.