Sandbox Docker CLI personnalisee

Executer n'importe quelle CLI agent depuis une sandbox Docker Dagu.

Un custom harness provider mappe un binaire CLI, des arguments fixes et la position du prompt vers une etape Dagu harness.run. Utilisez-le pour des agents internes, wrappers ou providers non integres a Dagu.

Custom provider dans Docker
type: graph

harnesses:
  review_agent:
    binary: review-agent
    prefix_args:
      - run
    prompt_mode: arg

steps:
  - id: review
    action: harness.run
    container:
      image: dagu-review-agent:local
      pull_policy: never
      working_dir: /workspace
      volumes:
        - .:/workspace:ro
      env:
        - REVIEW_AGENT_TOKEN=${REVIEW_AGENT_TOKEN}
    with:
      provider: review_agent
      prompt: |
        Review this repository.

Definit les binaires provider sous top-level harnesses.

prompt_mode: arg convient aux CLI qui prennent le prompt en argument.

prompt_mode: flag convient aux CLI qui exigent un flag prompt.

harness.run en container n'utilise pas le mode prompt stdin.

01

Definition provider

Le nom dans with.provider doit correspondre a une entree sous top-level harnesses. L'image doit contenir le binary configure dans PATH.

02

Prompt comme argument

Utilisez prompt_mode: arg quand la CLI accepte le prompt comme dernier argument de ligne de commande. Dagu construit une commande comme review-agent run "Review this repository."

03

Prompt comme flag

Utilisez prompt_mode: flag quand la CLI attend un flag prompt nomme.

Flag prompt mode
harnesses:
  review_agent:
    binary: review-agent
    prefix_args:
      - run
    prompt_mode: flag
    prompt_flag: --prompt
04

Exigences container

L'image runner doit contenir le binaire provider, son runtime, les outils attendus et un home ou cache writable si necessaire. Passez les credentials avec container.env ou montez les fichiers lus par le provider.