Skip to content

feat(init): onboard CLI agent tooling - #144

Open
Waishnav wants to merge 5 commits into
codex/dw-cli-skillsfrom
codex/dw-onboarding
Open

feat(init): onboard CLI agent tooling#144
Waishnav wants to merge 5 commits into
codex/dw-cli-skillsfrom
codex/dw-onboarding

Conversation

@Waishnav

@Waishnav Waishnav commented Aug 8, 2026

Copy link
Copy Markdown
Owner

Setup now treats direct subagents and Dynamic Workflows as one Agent Tooling choice. It probes locally available providers, lets the user select the allowed set, persists that allowlist, and ensures disabled or unavailable providers and profiles never appear in model-facing results.

When enabled, setup installs DevSpace-managed copies of both skills under ~/.devspace/skills. Later setup runs update only marked copies and preserve user-owned directories with the same names. Remote MCP configuration is optional, so CLI-only harness users do not need a tunnel or server.

The public docs now describe this single CLI architecture and the minimal open_workspace response, and remove the obsolete Claude and MCP workflow implementation bundle. Verified with npm run typecheck, the full test suite, the production app build, and npm pack --dry-run.

Summary by CodeRabbit

  • New Features

    • Added guided setup for remote MCP access, agent tooling, provider selection, and bundled skill installation.
    • Added support for configuring enabled agent providers and discovering available profiles.
    • Added a workspace dashboard showing skills, instructions, providers, profiles, and workflow activity.
    • Added documentation for subagents, Dynamic Workflows, provider configuration, managed skills, and remote MCP usage.
  • Improvements

    • Clarified initialization, serving, CLI targets, session handling, and workflow configuration.
    • Improved messages when agent or workflow features are disabled.
  • Documentation

    • Consolidated and simplified workflow guidance, removing outdated standalone references.

@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.
To continue using code reviews, you can upgrade your account or add credits to your account and enable them for code reviews in your settings.

@coderabbitai

coderabbitai Bot commented Aug 8, 2026

Copy link
Copy Markdown

Review Change Stack

📝 Walkthrough

Walkthrough

This change adds provider-aware agent tooling setup, managed skill installation, a workspace dashboard, and updated documentation. It also removes older Dynamic Workflow documentation and replaces workflow-specific dashboard presentation with summarized workspace data.

Changes

Agent tooling configuration

Layer / File(s) Summary
Provider configuration and availability
src/config.ts, src/user-config.ts, src/local-agent-availability.ts, src/cli.ts, src/server.ts, src/workflow-providers.ts, src/workflow-worker.ts, src/*test.ts
Provider selections are validated, persisted, filtered by availability, and passed through CLI, server, and workflow execution paths.
Initialization and managed skills
src/cli.ts, src/skill-install.ts, src/skill-install.test.ts, package.json
Initialization configures MCP and agent tooling, selects providers, installs bundled skills, and reports installation results.
Workspace dashboard replacement
src/ui/workspace-dashboard.ts, src/ui/workspace-app.tsx, src/ui/workspace-app.css, src/server.ts
The workspace dashboard displays metadata, skills, instructions, providers, profiles, model handoff data, and active workflow summaries.
Agent tooling documentation
README.md, docs/chatgpt-coding-workflow.md, docs/configuration.md, docs/dynamic-workflows.md, docs/gotchas.md, docs/setup.md
Documentation covers provider selection, managed skills, profiles, CLI workflows, remote MCP setup, and workspace data. Older Dynamic Workflow reference pages and implementation plans were removed.

Estimated code review effort: 3 (Moderate) | ~25 minutes

Possibly related PRs

Poem

A rabbit hops through tools anew,
With skills installed and providers in view.
Workflows count calls in a tidy display,
Profiles guide agents along their way.
MCP doors open when setup is done—
Configuration makes the work hop on! 🐇

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 6.67% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly summarizes the main change: onboarding CLI agent tooling during initialization.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches 💡 1
📝 Generate docstrings 💡
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch codex/dw-onboarding

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@Waishnav Waishnav changed the title codex/dw onboarding feat(init): onboard CLI agent tooling Aug 8, 2026
@greptile-apps

greptile-apps Bot commented Aug 8, 2026

Copy link
Copy Markdown

Greptile Summary

The PR streamlines DevSpace onboarding, adds provider selection and managed installation of bundled agent skills, applies provider allowlists across direct agents and workflow workers, simplifies workflow documentation, and reduces the workspace UI to a compact workflow summary.

  • Makes remote MCP configuration optional during initialization.
  • Adds persisted agent-provider selection and availability filtering.
  • Installs managed subagents and dynamic-workflows skills when agent tooling is enabled.
  • Replaces the detailed workflow dashboard with a workspace-focused summary.
  • Consolidates the Dynamic Workflows documentation.

Confidence Score: 4/5

The provider persistence issue should be fixed before merging because the documented environment flag can enable agent tooling in a state where every installed provider remains unusable.

Opting out during initialization stores an explicit empty provider allowlist, and later feature-only environment overrides do not restore defaults, leaving direct agents and workflow agent calls unable to resolve any provider.

Files Needing Attention: src/cli.ts, src/config.ts

Important Files Changed

Filename Overview
src/cli.ts Adds the onboarding branches, provider selection, and skill installation, but persists an empty provider allowlist when tooling is disabled.
src/config.ts Adds provider allowlist parsing and feature configuration; an explicitly empty persisted list overrides provider defaults after environment-based re-enablement.
src/skill-install.ts Installs and safely updates managed bundled skills while preserving user-owned directories.
src/local-agent-availability.ts Filters provider availability checks through the configured allowlist and rejects explicitly disabled providers.
src/workflow-providers.ts Applies the same configured provider allowlist to workflow agent resolution.
src/ui/workspace-dashboard.ts Replaces detailed workflow rendering with a compact workspace and active-workflow overview.

Flowchart

%%{init: {'theme': 'neutral'}}%%
flowchart TD
  A[devspace init] --> B{Enable agent tooling?}
  B -- Yes --> C[Detect available providers]
  C --> D[Select provider allowlist]
  D --> E[Persist config]
  E --> F[Install bundled agent skills]
  B -- No --> G[Persist subagents false and empty providers]
  G --> H[Later set DEVSPACE_SUBAGENTS=1]
  H --> I[Feature enabled but provider allowlist remains empty]
  I --> J[Agent and workflow resolution fails]
Loading

Reviews (1): Last reviewed commit: "docs: document CLI-only agent tooling" | Re-trigger Greptile

Comment thread src/cli.ts Outdated
@Waishnav
Waishnav force-pushed the codex/dw-onboarding branch from 77b4973 to 37b2da9 Compare August 8, 2026 00:57
@Waishnav
Waishnav force-pushed the codex/dw-onboarding branch from 37b2da9 to a433fc7 Compare August 8, 2026 00:59
@Waishnav
Waishnav force-pushed the codex/dw-onboarding branch from a433fc7 to a5fb6ad Compare August 8, 2026 01:02
@Waishnav
Waishnav force-pushed the codex/dw-onboarding branch from a5fb6ad to b0c0ff1 Compare August 8, 2026 01:10
@Waishnav

Waishnav commented Aug 8, 2026

Copy link
Copy Markdown
Owner Author

[gpt-5.4] RESPONDING ON BEHALF OF WAISHNAV

Fixed in b0c0ff1. Disabling agent tooling during setup now preserves an existing provider selection or leaves it unspecified; it no longer persists an empty deny-all list. A later DEVSPACE_SUBAGENTS=1 therefore restores the default provider catalog when no explicit allowlist exists. Added config coverage for that re-enable path.

@coderabbitai

coderabbitai Bot commented Aug 9, 2026

Copy link
Copy Markdown

@Waishnav, I will perform a complete review of pull request #144.

⚠️ Action not completed

Review rate limited.


Your included review limit is currently reached under our Fair Usage Limits Policy. This review may still proceed through usage-based billing if eligible. Your next included review will be available in 57 minutes.

@Waishnav

Waishnav commented Aug 9, 2026

Copy link
Copy Markdown
Owner Author

@coderabbitai full review

@coderabbitai

coderabbitai Bot commented Aug 9, 2026

Copy link
Copy Markdown
✅ Action performed

Full review finished.

@coderabbitai coderabbitai Bot 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.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@src/cli.ts`:
- Around line 221-230: Update the DevspaceUserConfig construction to synchronize
the workflows capability with the subagents setting, preventing
files.config.workflows from remaining enabled when Agent Tooling is disabled.
Use the same explicit capability state as subagents while preserving the
existing workflow behavior when Agent Tooling is enabled, and verify the
resulting config is honored by the workflow reaper startup in server.ts.
🪄 Autofix

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro Plus

Run ID: fa822ece-aad1-4436-97fa-8f2cf72849df

📥 Commits

Reviewing files that changed from the base of the PR and between 411e393 and b0c0ff1.

📒 Files selected for processing (42)
  • README.md
  • docs/chatgpt-coding-workflow.md
  • docs/claude-code-dynamic-workflows.html
  • docs/configuration.md
  • docs/dynamic-workflow/claude/README.md
  • docs/dynamic-workflow/claude/agent.md
  • docs/dynamic-workflow/claude/architecture.md
  • docs/dynamic-workflow/claude/cheatsheet.md
  • docs/dynamic-workflow/claude/concurrency.md
  • docs/dynamic-workflow/claude/control-and-io.md
  • docs/dynamic-workflow/claude/lifecycle.md
  • docs/dynamic-workflow/claude/limits.md
  • docs/dynamic-workflow/claude/opt-in.md
  • docs/dynamic-workflow/claude/orchestration.md
  • docs/dynamic-workflow/claude/patterns.md
  • docs/dynamic-workflow/claude/primitives.md
  • docs/dynamic-workflow/claude/resume.md
  • docs/dynamic-workflow/claude/script-contract.md
  • docs/dynamic-workflow/claude/usecases.md
  • docs/dynamic-workflow/claude/workflow-tool.md
  • docs/dynamic-workflow/devspace/plan.md
  • docs/dynamic-workflow/devspace/primitives-spec.md
  • docs/dynamic-workflows.md
  • docs/gotchas.md
  • docs/setup.md
  • package.json
  • src/cli.test.ts
  • src/cli.ts
  • src/config.test.ts
  • src/config.ts
  • src/local-agent-availability.test.ts
  • src/local-agent-availability.ts
  • src/server.ts
  • src/skill-install.test.ts
  • src/skill-install.ts
  • src/ui/workspace-app.css
  • src/ui/workspace-app.tsx
  • src/ui/workspace-dashboard.ts
  • src/user-config.ts
  • src/workflow-cli.ts
  • src/workflow-providers.ts
  • src/workflow-worker.ts
💤 Files with no reviewable changes (19)
  • docs/dynamic-workflow/claude/lifecycle.md
  • docs/dynamic-workflow/claude/orchestration.md
  • docs/dynamic-workflow/claude/resume.md
  • docs/dynamic-workflow/claude/architecture.md
  • docs/dynamic-workflow/claude/README.md
  • docs/dynamic-workflow/claude/cheatsheet.md
  • docs/dynamic-workflow/claude/opt-in.md
  • docs/dynamic-workflow/claude/agent.md
  • docs/claude-code-dynamic-workflows.html
  • docs/dynamic-workflow/devspace/plan.md
  • docs/dynamic-workflow/claude/limits.md
  • docs/dynamic-workflow/claude/patterns.md
  • docs/dynamic-workflow/claude/usecases.md
  • docs/dynamic-workflow/claude/primitives.md
  • docs/dynamic-workflow/claude/control-and-io.md
  • docs/dynamic-workflow/claude/script-contract.md
  • docs/dynamic-workflow/claude/workflow-tool.md
  • docs/dynamic-workflow/devspace/primitives-spec.md
  • docs/dynamic-workflow/claude/concurrency.md

Comment thread src/cli.ts
Comment on lines 221 to +230
const config: DevspaceUserConfig = {
...files.config,
host: files.config.host ?? "127.0.0.1",
port,
allowedRoots,
publicBaseUrl,
subagents: resolveSubagentsFlag(files.config),
subagents,
// Disabling the capability should not turn provider defaults into an
// explicit deny-all list if it is later enabled through the environment.
agentProviders: subagents ? agentProviders : files.config.agentProviders,

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🎯 Functional Correctness | 🟠 Major | ⚡ Quick win

Synchronize workflow state with Agent Tooling.

Line 227 updates only subagents. The spread at Line 222 preserves an existing workflows: true value. src/server.ts starts the workflow reaper when config.workflows is true.

If the user disables Agent Tooling, workflows can remain enabled and execute with the prior workflow setting. Persist the same explicit capability state for workflows, or provide a separate workflow setup option.

Proposed fix
       publicBaseUrl,
       subagents,
+      workflows: subagents,
       // Disabling the capability should not turn provider defaults into an

As per coding guidelines, trace lifecycle and tool-surface contracts when changing a cross-cutting concept.

📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
const config: DevspaceUserConfig = {
...files.config,
host: files.config.host ?? "127.0.0.1",
port,
allowedRoots,
publicBaseUrl,
subagents: resolveSubagentsFlag(files.config),
subagents,
// Disabling the capability should not turn provider defaults into an
// explicit deny-all list if it is later enabled through the environment.
agentProviders: subagents ? agentProviders : files.config.agentProviders,
const config: DevspaceUserConfig = {
...files.config,
host: files.config.host ?? "127.0.0.1",
port,
allowedRoots,
publicBaseUrl,
subagents,
workflows: subagents,
// Disabling the capability should not turn provider defaults into an
// explicit deny-all list if it is later enabled through the environment.
agentProviders: subagents ? agentProviders : files.config.agentProviders,
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@src/cli.ts` around lines 221 - 230, Update the DevspaceUserConfig
construction to synchronize the workflows capability with the subagents setting,
preventing files.config.workflows from remaining enabled when Agent Tooling is
disabled. Use the same explicit capability state as subagents while preserving
the existing workflow behavior when Agent Tooling is enabled, and verify the
resulting config is honored by the workflow reaper startup in server.ts.

Source: Coding guidelines

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.

1 participant