Add Tandem Workflow Architect#99
Conversation
| }, | ||
| "skills": "./skills/", | ||
| "mcpServers": "./.mcp.json", | ||
| "commands": "./commands/", |
There was a problem hiding this comment.
CRITICAL: "commands": "./commands/" references a directory that does not exist in the plugin. The commands/ directory with workflow template .md files is required per the plugin spec and is documented in the README "Layout at a glance" section.
| }, | ||
| "scripts": { | ||
| "build": "tsc --noEmit", | ||
| "release:notes": "node scripts/extract-release-notes.mjs", |
There was a problem hiding this comment.
CRITICAL: All npm script entries reference paths under scripts/ that do not exist (e.g., scripts/extract-release-notes.mjs, scripts/tandem-api-healthcheck.ts, etc.). The scripts/ directory is required per the README "Layout at a glance". Additionally, no tsconfig.json is present, which is required for the build and typecheck scripts (tsc --noEmit) to function.
|
|
||
| ## Pointers | ||
|
|
||
| - Auth and token sources: `shared/tandem-auth.md` |
There was a problem hiding this comment.
CRITICAL: The "Pointers" section references shared documentation files that do not exist: shared/tandem-auth.md, shared/tandem-workflow-design-rules.md, shared/tandem-output-contracts.md, shared/tandem-approval-gates.md, shared/tandem-api-discovery-notes.md. These are required supporting docs that the skill directs users to.
| .agents/plugins/marketplace.json Repo-scoped marketplace entry | ||
| .mcp.json Plugin-bundled Tandem Docs MCP config | ||
| skills/tandem-workflow-plan-mode/SKILL.md | ||
| commands/{create,revise,build-complex,preview,validate,apply,import-preview,run}-workflow.md |
There was a problem hiding this comment.
CRITICAL: The "Layout at a glance" section documents files/directories that are missing from the plugin: commands/ (lines 417-418), scripts/ (lines 419-425), shared/ (lines 426-430), and examples/ (lines 431, 432). The plugin payload documented as the repo root contents is incomplete.
Code Review SummaryStatus: 5 Issues Found | Recommendation: Address before merge Incremental update: Comparing review bases 0aa830e→ca19dad (current HEAD), only 2 files changed in the diff:
No new issues detected in this increment. All 5 CRITICAL issues remain unresolved. Overview
Issue Details (click to expand)CRITICAL
Other Observations (not in diff)Deleted files (non-functional without restoration):
Stale inline comments on deleted files: Comments referencing Files Reviewed (5 files)
Fix LinkFix these issues in Kilo Cloud Reviewed by step-3.5-flash · 743,453 tokens |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: ca19dad19e
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| @@ -0,0 +1,7 @@ | |||
| { | |||
| "mcp_servers": { | |||
There was a problem hiding this comment.
Use the supported MCP wrapper key
For users installing this plugin through Codex, this .mcp.json will not register the Tandem docs server because Codex's plugin loader deserializes the wrapped form as camelCase mcpServers (or as a direct top-level server map); the snake_case mcp_servers field is treated as an unknown field and ignored, leaving the plugin with no bundled MCP servers. Rename this wrapper to mcpServers or make tandemDocs the top-level key.
Useful? React with 👍 / 👎.
| "version:set": "node scripts/set-version.mjs", | ||
| "typecheck": "tsc --noEmit", | ||
| "healthcheck": "tsx scripts/tandem-api-healthcheck.ts", | ||
| "create-draft": "tsx scripts/tandem-create-workflow-draft.ts", |
There was a problem hiding this comment.
Bundle the scripts referenced by npm commands
The mirrored plugin contains no scripts/ directory, but these package scripts point at files under scripts/; users following the README workflow (for example npm run create-draft) or release checks hit MODULE_NOT_FOUND instead of calling the Tandem API. Include the referenced scripts in the mirrored bundle or remove the broken npm commands/docs.
Useful? React with 👍 / 👎.
There was a problem hiding this comment.
Code Review
This pull request introduces the Tandem Workflow Architect plugin, adding it to the marketplace and providing its manifest, MCP configuration, and a skill definition for workflow design. The review feedback identifies critical issues with invalid dependency versions in the package manifest and several broken links to missing files or incorrect domains within the documentation and skill files.
| "devDependencies": { | ||
| "@types/node": "^25.6.2", | ||
| "tsx": "^4.19.2", | ||
| "typescript": "^5.6.3" | ||
| } |
There was a problem hiding this comment.
The versions specified for several devDependencies do not exist in the public npm registry. This will cause npm install to fail for anyone trying to build this plugin. Please update them to valid, recent versions.
| "devDependencies": { | |
| "@types/node": "^25.6.2", | |
| "tsx": "^4.19.2", | |
| "typescript": "^5.6.3" | |
| } | |
| "devDependencies": { | |
| "@types/node": "^20.14.10", | |
| "tsx": "^4.16.2", | |
| "typescript": "^5.5.3" | |
| } |
|
|
||
| Copy `.env.example` to `.env` and set the variable(s) that match your | ||
| setup. Detailed recipe and troubleshooting: | ||
| [`shared/tandem-auth.md`](./shared/tandem-auth.md). |
There was a problem hiding this comment.
This README contains several broken links that will negatively impact user experience.
- Missing Files: Many links point to files in
shared/,examples/, anddocs/directories (e.g.,shared/tandem-auth.mdon this line,docs/RELEASE_PROCESS.mdon line 406, and many others listed under "Layout at a glance"). These files are not part of the pull request. Please either add these missing files or remove the links. - Incorrect Domain: Several links use a placeholder domain
developers.openai.com(e.g., on lines 374 and 437-439) instead of the correctopenai.com. These should be corrected.
|
|
||
| For **V2 automations**, flip `status: "paused" → "active"` via the | ||
| Tandem control panel (or an automations PATCH endpoint if the engine | ||
| exposes one — *not yet verified in `@frumu/tandem-client`'s public |
There was a problem hiding this comment.
This skill documentation appears to contain a leftover developer note and several broken links to missing files.
- Developer Note: The comment
*not yet verified in @frumu/tandem-client's public surface*on this line seems like an internal note and should be removed or rephrased for public documentation. - Broken Links: This document contains multiple references to files in a
shared/directory (e.g., on lines 36, 197, 206, and 366-371) which is not included in the pull request. Please add the missing files or remove the references.
ca19dad to
639c52c
Compare
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 639c52ce41
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
|
|
||
| const bundlePath = writeBundle( | ||
| bundle, | ||
| outPath ?? `.tandem-codex/plan-bundles/${planId}.json`, |
There was a problem hiding this comment.
Add an ignore rule for generated bundles
When npm run apply is used without --out, the helper writes the engine-issued bundle under .tandem-codex/, but this commit does not add a .gitignore entry for that directory (I checked the repo and plugin tree). That leaves generated workflow bundles as untracked files in the checkout even though the command docs say they are excluded, and those bundles can contain workflow details users did not intend to commit; add a plugin/root ignore rule or write to an already ignored cache location.
Useful? React with 👍 / 👎.
639c52c to
6f6cc88
Compare
| @@ -0,0 +1,7 @@ | |||
| { | |||
| "mcpServers": { | |||
There was a problem hiding this comment.
CRITICAL: Property mcpServers renamed to mcp_servers — breaking change from standard MCP configuration format. Standard MCP configs use camelCase (mcpServers). Using snake_case (mcp_servers) will likely prevent the Tandem Docs MCP server from being discovered by Codex or the MCP client.
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 6f6cc8837d
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| } | ||
|
|
||
| const finalBundle = (previewed as { bundle?: unknown }).bundle ?? bundle; | ||
| const imported = await client.workflowPlans.importPlan({ bundle: finalBundle }); |
There was a problem hiding this comment.
Gate importPlan behind explicit approval
When /import-preview-workflow is used to inspect a bundle and this helper is invoked, any compatible preview immediately falls through to importPlan, even though the command and skill describe importPreview as non-mutating and require a separate same-turn “yes, import” before committing. That can create a live Tandem plan just because the user asked for a preview; split preview from import or require an explicit flag/argument before reaching this call.
Useful? React with 👍 / 👎.
6f6cc88 to
0aa830e
Compare
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 0aa830e8d7
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| npm run create-draft -- "Daily Reddit research to Notion" | ||
| npm run revise -- <plan_id> "Add approval before Notion write" | ||
| npm run apply -- <plan_id> | ||
| npm run import-plan -- .tandem-codex/plan-bundles/<plan_id>.json |
There was a problem hiding this comment.
Include the import approval flag in the CLI flow
In the documented end-to-end CLI path, this final step never commits the plan because scripts/tandem-import-plan.ts only calls importPlan when --import is present; without that flag it exits after a compatible preview. Users following this “end-to-end” sequence after approval will not create the live Tandem plan, so add --import to this command or label it as preview-only.
Useful? React with 👍 / 👎.
0aa830e to
cbf2238
Compare
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: cbf2238119
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| - `X-Tandem-Token: <token>` | ||
| - `Authorization: Bearer <token>` | ||
|
|
||
| Copy `.env.example` to `.env` and set the variable(s) that match your |
There was a problem hiding this comment.
Provide the documented env template
For the documented auth setup path, this tells users to copy .env.example, but no .env.example file was added anywhere in the repo (checked with rg --files -g '.env.example'). In a fresh plugin checkout this step fails before the helper scripts can load the token via dotenv/config, so users following the README cannot configure auth as described; add the template or update the instruction to use the explicit exports documented below.
Useful? React with 👍 / 👎.
Adds Tandem Workflow Architect to the community plugin directory under Development & Workflow.\n\nTandem Workflow Architect helps users plan Tandem workflows in Codex, then validate, preview, and run them through the governed Tandem engine.\n\nPlugin repo: https://github.com/frumu-ai/tandem-codex-plugin\n\nLocal checks:\n- python3 scripts/check-alphabetical.py README.md\n- python3 scripts/generate_plugins_json.py\n- node build.js\n- plugin-scanner verify plugins/frumu-ai/tandem-codex-plugin