Forráskód Böngészése

feat(examples): default agent configs to DeepSeek Pro Max Thinking

Turtle 1 hónapja
szülő
commit
0e06d0691d

+ 1 - 1
examples/acp-agent/advanced.cordis.yml

@@ -9,7 +9,7 @@
         name: '@deepseek-ai/dsh-acp-demo'
         config:
           provider: deepseek
-          model: deepseek-v4-flash
+          model: deepseek-v4-pro
           persistenceRoot: !!js process.env.DSH_SNAPSHOT_SESSIONS_ROOT ?? './.sessions'
           persistenceCompression: !!js "process.env.DSH_SNAPSHOT === undefined ? 'zstd' : 'none'"
           workspaceContext:

+ 1 - 1
examples/acp-agent/both-mode.cordis.yml

@@ -11,7 +11,7 @@
         name: '@deepseek-ai/dsh-acp-demo'
         config:
           provider: deepseek
-          model: deepseek-v4-flash
+          model: deepseek-v4-pro
           persistenceRoot: !!js process.env.DSH_SNAPSHOT_SESSIONS_ROOT ?? './.sessions'
           persistenceCompression: !!js "process.env.DSH_SNAPSHOT === undefined ? 'zstd' : 'none'"
           workspaceContext:

+ 1 - 1
examples/acp-agent/code-mode-workspace-context.cordis.yml

@@ -9,7 +9,7 @@
         name: '@deepseek-ai/dsh-acp-demo'
         config:
           provider: deepseek
-          model: deepseek-v4-flash
+          model: deepseek-v4-pro
           persistenceRoot: !!js process.env.DSH_SNAPSHOT_SESSIONS_ROOT ?? './.sessions'
           persistenceCompression: !!js "process.env.DSH_SNAPSHOT === undefined ? 'zstd' : 'none'"
           workspaceContext:

+ 1 - 1
examples/acp-agent/code-mode.cordis.yml

@@ -12,7 +12,7 @@
         name: '@deepseek-ai/dsh-acp-demo'
         config:
           provider: deepseek
-          model: deepseek-v4-flash
+          model: deepseek-v4-pro
           persistenceRoot: !!js process.env.DSH_SNAPSHOT_SESSIONS_ROOT ?? './.sessions'
           persistenceCompression: !!js "process.env.DSH_SNAPSHOT === undefined ? 'zstd' : 'none'"
           workspaceContext:

+ 17 - 1
examples/acp-agent/cordis.snapshot.yml

@@ -1,6 +1,10 @@
 # Keyless replay includes the live `cordis.yml`, disables the key-requiring
 # DeepSeek adapter, and inserts `llm-replay` to serve recorded JSONL without a key
-# or network; every other app entry remains shared.
+# or network; every other app entry remains shared. It also restates the acp-agent
+# config to re-pin `deepseek-v4-flash`: `cordis.yml` ships `deepseek-v4-pro`, but the
+# recorded corpus (request headers, provenance, system prompt) was captured on flash,
+# so replay holds the recorded model to stay reproducible without a re-record. A config
+# patch replaces the whole app config, so the base fields are restated verbatim.
 # With `DSH_SNAPSHOT=replay`, the app bin reads `DSH_SNAPSHOT_FILE` and optional
 # `DSH_SNAPSHOT_OVERRIDE` from the harness. The one-shot patch applies at include
 # load time, and stdout remains reserved for ACP JSON-RPC.
@@ -15,6 +19,18 @@
       - id: llm-deepseek
         name: '@deepseek-ai/dsh-llm-deepseek'
         disabled: true
+      - id: acp-agent
+        name: '@deepseek-ai/dsh-acp-demo'
+        config:
+          provider: deepseek
+          model: deepseek-v4-flash
+          persistenceRoot: !!js process.env.DSH_SNAPSHOT_SESSIONS_ROOT ?? './.sessions'
+          workspaceContext:
+            maxBytes: 65536
+          persona: |
+            You are a coding assistant powered by the {{model}} model. Your working directory is {{cwd}}. Your bash tool runs under a file sandbox — a `[sandbox: file access denied …]` result is policy, not a command bug.
+
+            Verify your work by running the code or tests. Keep answers brief and factual.
       - id: sandbox
         name: '@deepseek-ai/dsh-sandbox-local'
         config:

+ 16 - 1
examples/acp-agent/fs.cordis.snapshot.yml

@@ -1,6 +1,9 @@
 # Keyless filesystem snapshots apply the spill and replay overlays directly
 # because include patches cannot target entries behind a nested include. The
-# sandboxed filesystem stack already lives in the base cordis.yml.
+# sandboxed filesystem stack already lives in the base cordis.yml. This file also
+# re-pins the acp-agent model to `deepseek-v4-flash`: `cordis.yml` ships
+# `deepseek-v4-pro`, but the recorded corpus was captured on flash, and a config
+# patch replaces the whole app config, so the base fields are restated verbatim.
 - id: base
   name: '@cordisjs/plugin-include'
   config:
@@ -9,6 +12,18 @@
       - id: llm-deepseek
         name: '@deepseek-ai/dsh-llm-deepseek'
         disabled: true
+      - id: acp-agent
+        name: '@deepseek-ai/dsh-acp-demo'
+        config:
+          provider: deepseek
+          model: deepseek-v4-flash
+          persistenceRoot: !!js process.env.DSH_SNAPSHOT_SESSIONS_ROOT ?? './.sessions'
+          workspaceContext:
+            maxBytes: 65536
+          persona: |
+            You are a coding assistant powered by the {{model}} model. Your working directory is {{cwd}}. Your bash tool runs under a file sandbox — a `[sandbox: file access denied …]` result is policy, not a command bug.
+
+            Verify your work by running the code or tests. Keep answers brief and factual.
       - insert:
           - id: spill-local
             name: '@deepseek-ai/dsh-spill-local'

+ 1 - 1
examples/acp-agent/workspace-context.cordis.yml

@@ -10,7 +10,7 @@
         name: '@deepseek-ai/dsh-acp-demo'
         config:
           provider: deepseek
-          model: deepseek-v4-flash
+          model: deepseek-v4-pro
           persistenceRoot: !!js process.env.DSH_SNAPSHOT_SESSIONS_ROOT ?? './.sessions'
           persistenceCompression: !!js "process.env.DSH_SNAPSHOT === undefined ? 'zstd' : 'none'"
           workspaceContext:

+ 28 - 2
examples/headless-agent/advanced.cordis.snapshot.yml

@@ -1,12 +1,38 @@
-# Replay counterpart to advanced.cordis.yml; only the live model is replaced.
+# Replay counterpart to advanced.cordis.yml. It includes the base `cordis.yml`
+# directly — a config patch cannot target an entry behind a nested include — and
+# restates advanced.cordis.yml's overlay (the cli-agent config plus the
+# code-runtime and tool-cordis inserts) so the whole app config lives in one patch.
+# It re-pins `deepseek-v4-flash`: `cordis.yml` ships `deepseek-v4-pro`, but the
+# recorded corpus (request headers, provenance) was captured on flash, so replay
+# holds the recorded model to stay reproducible without a re-record. It also
+# disables the key-requiring DeepSeek adapter and inserts `llm-replay` to serve
+# recorded JSONL without a key or network.
 - id: base
   name: '@cordisjs/plugin-include'
   config:
-    path: ./advanced.cordis.yml
+    path: ./cordis.yml
     patches:
       - id: llm-deepseek
         name: '@deepseek-ai/dsh-llm-deepseek'
         disabled: true
+      - id: cli-agent
+        name: '@deepseek-ai/dsh-cli-demo'
+        config:
+          provider: deepseek
+          model: deepseek-v4-flash
+          persistenceRoot: './.sessions'
+          workspaceContext:
+            maxBytes: 65536
+          tools:
+            mode: both
+          persona: |
+            You are headless-agent, a coding assistant powered by the {{model}} model. Your working directory is {{cwd}}.
+
+            Verify your work by running the code or tests. Keep answers brief and factual.
       - insert:
+          - id: code-runtime
+            name: '@deepseek-ai/dsh-code-runtime-worker'
+          - id: tool-cordis
+            name: '@deepseek-ai/dsh-tool-cordis'
           - id: llm-replay
             name: '@deepseek-ai/dsh-llm-replay'

+ 1 - 1
examples/headless-agent/advanced.cordis.yml

@@ -8,7 +8,7 @@
         name: '@deepseek-ai/dsh-cli-demo'
         config:
           provider: deepseek
-          model: deepseek-v4-flash
+          model: deepseek-v4-pro
           persistenceRoot: './.sessions'
           persistenceCompression: !!js "process.env.DSH_SNAPSHOT === undefined ? 'zstd' : 'none'"
           workspaceContext:

+ 5 - 1
examples/headless-agent/cordis.yml

@@ -4,11 +4,15 @@
 
 # The DeepSeek adapter. Swap to '@deepseek-ai/dsh-llm-pi-ai' for the pi-ai-backed
 # twin (same config shape; `reasoning: high` replaces thinking/reasoningEffort).
+# Shipped default: full thinking at max effort on every request (wire-only
+# defaults; they never enter the request header).
 - id: llm-deepseek
   name: '@deepseek-ai/dsh-llm-deepseek'
   config:
     apiKey: !!js process.env.DEEPSEEK_API_KEY
     baseURL: !!js process.env.DEEPSEEK_BASE_URL
+    thinking: enabled
+    reasoningEffort: max
     models:
       - id: deepseek-v4-pro
         contextWindow: 128000
@@ -25,7 +29,7 @@
   name: '@deepseek-ai/dsh-cli-demo'
   config:
     provider: deepseek
-    model: deepseek-v4-flash
+    model: deepseek-v4-pro
     persistenceRoot: './.sessions'
     persistenceCompression: !!js "process.env.DSH_SNAPSHOT === undefined ? 'zstd' : 'none'"
     workspaceContext:

+ 5 - 0
examples/jsonrpc-agent/cordis.yml

@@ -6,11 +6,16 @@
   config:
     maxTokensAsSuccess: !!js "process.env.DSH_MAX_TOKENS_AS_SUCCESS === undefined ? true : JSON.parse(process.env.DSH_MAX_TOKENS_AS_SUCCESS)"
 
+# The DeepSeek adapter. Shipped default: full thinking at max effort on every
+# request (wire-only defaults; they never enter the request header). The model
+# arrives per session over JSON-RPC, so it is not pinned here.
 - id: llm-deepseek
   name: '@deepseek-ai/dsh-llm-deepseek'
   config:
     apiKey: !!js process.env.DEEPSEEK_API_KEY
     baseURL: !!js process.env.DEEPSEEK_BASE_URL
+    thinking: enabled
+    reasoningEffort: max
 
 - id: bash
   name: '@deepseek-ai/dsh-bash-local'