Skip to content

Expose blessed workspace capabilities as an optional Agents API executor #560

@chubes4

Description

@chubes4

Problem

Data Machine Code owns concrete workspace and Git side effects: workspace registry, worktree lifecycle, file operations, GitHub operations, and code-task scaffolding. Those should not be imported into Studio Web directly.

Once Agents API owns generic task execution plumbing, DMC should expose blessed workspace capabilities as an optional executor/tool provider while keeping all filesystem and Git side effects inside DMC.

Upstream tracker: Automattic/agents-api#309

Scope

Add an optional Agents API adapter that registers DMC capabilities only when Agents API executor plumbing is present.

Potential target:

  • data-machine-code/blessed-workspace

Capabilities may include:

  • filesystem.read
  • filesystem.write
  • git.diff
  • git.commit
  • github.pr

Required code areas

  • data-machine-code.php
  • inc/Abilities/WorkspaceAbilities.php
  • inc/Abilities/CodeTaskAbilities.php
  • inc/Tools/AbilityToolProjections.php
  • inc/CodeTask/CodeTaskCreator.php
  • New adapter namespace, for example inc/AgentsApi/WorkspaceExecutorAdapter.php

Non-goals

  • Do not make Studio Web call DMC directly.
  • Do not move workspace/worktree/Git side effects into Agents API.
  • Do not require DMC for Codebox or Studio Web to function.

Acceptance criteria

  • DMC registers executor/tool capabilities only when the Agents API executor substrate exists.
  • Registered capability metadata is generic and side-effect boundaries are explicit.
  • Workspace side effects still go through DMC-owned abilities/services.
  • Tests prove the adapter is optional and does not alter existing DMC ability/tool behavior when Agents API executor plumbing is absent.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions