2.5 KiB
2.5 KiB
Maintainer Automation Notes
This document keeps agent- and maintainer-specific workflow notes out of the repository root while preserving repo-local guidance for automation.
Read Order
README.mdCONTRIBUTING.mddocs/architecture.md- This document
Project Snapshot
dwsis a Go-based DingTalk Workspace CLI and MCP runtime bridge.- Product commands are loaded dynamically via
internal/pluginfrom bundled descriptors. - Command handlers live in
internal/helpers; runtime execution flows throughinternal/executorandinternal/transport.
Repository Map
cmd: public CLI entrypointinternal/app: root command wiring, static utility commands, plugin loadinginternal/helpers: product command handlers (dev, chat, calendar, contact, etc.)internal/plugin: plugin-based dynamic command loaderinternal/cli: catalog types and static endpoint loaderinternal/executor: invocation dispatch and result handlinginternal/transport: MCP HTTP client and request signinginternal/auth: login, token management, agent-code detectioninternal/audit: user operation audit loginternal/errors: structured error model with categories and hintsinternal/keychain: OS keychain integration for credential storageinternal/security: endpoint allowlist and domain trustinternal/pat: PAT (Personal Access Token) authorization flowdocs/: public architecture and reference docsscripts/: build, test, lint, packaging, and policy checkstest/: CLI, integration, contract, unit, and skill E2E test suites
Task Routing
- Add or fix a command path: start from
internal/helpers(handler implementations) orinternal/app(command tree wiring) - Protocol or transport issues: inspect
internal/transport - Auth or login issues: inspect
internal/auth,internal/pat,internal/keychain - Error message or category issues: inspect
internal/errors - Audit log issues: inspect
internal/audit - Plugin loading or command surface: inspect
internal/plugin - Failure or degraded mode: inspect
internal/errors,internal/recovery
Policy Checks
When command surface or plugin descriptors change, run:
./scripts/policy/check-command-surface.sh --strict./scripts/policy/check-open-source-assets.sh
Common Commands
make build
make test
make lint
./scripts/dev/ci-local.sh
git diff --check
Handoff Checklist
Before handoff, include:
- Changed files and why
- Verification commands run and outcomes
- Known risks or follow-up work