Files
deepseek-harness/examples/AGENTS.md
T
Tianyi Cui dbf4bebe83 Merge remote-tracking branch 'origin/master' into codex/simp-share-loader-smoke-harness
# Conflicts:
#	examples/AGENTS.md
#	examples/coding-agent/tests/code-mode-keyless-smoke.e2e.ts
#	examples/coding-agent/tests/keyless-smoke.e2e.ts
#	examples/cordis-agent/tests/keyless-smoke.e2e.ts
#	examples/echo-agent/tests/echo.e2e.ts
2026-07-14 18:30:10 +08:00

1.6 KiB

AGENTS.md — Examples

Runnable harness compositions. Examples are not workspaces: private package stubs are not built. App bins load each cordis.yml through tsx; package names resolve through root tsconfig.json paths, not node_modules.

Keep wiring, demo fixtures, and e2e/snapshot scenarios here. Move reusable logic into packages/, with coverage and a README. App bins own bootstrapping; examples have no start.ts.

E2E smokes

Each example has both:

  • Keyless: boot the real cordis.yml through the Loader, drive it, and assert output and clean exit. Catches Loader/export-shape failures hand-mounted tests miss (postmortem).
  • With-key: send a live-model prompt and verify external state, not the model's claim. Self-skip without DEEPSEEK_API_KEY; see testing.md.

Mock-only examples require only the keyless tier; state that exception in the test.

Keyless stdio smokes use @deepseek-ai/dsh-loader-smoke for isolation, root-tsconfig loading, subprocess lifecycle, diagnostics, EOF, and cleanup; tests supply paths, environment, input, and assertions.

Do not inventory example tests here; the tests/ trees and root scripts are authoritative.

In cordis.yml, comment only non-obvious wiring, load-order consequences, replay, security boundaries, and configuration scope. Do not narrate visible entries; use dsh-prose-standard for required coverage and editorial judgment.

See the root AGENTS.md for repo-wide conventions and docs/architecture.md for the design.