1.4 KiB
1.4 KiB
Architecture
dws is a Go CLI that turns DingTalk MCP metadata into a command-line surface for both humans and AI agents.
High-Level Flow
internal/marketfetches the registry and server metadata.internal/discoveryresolves runtime server capabilities and caches results.internal/irnormalizes discovery output into one canonical tool catalog.internal/cliandinternal/appmount that catalog into the public Cobra command tree.internal/transportexecutes MCP JSON-RPC calls andinternal/outputformats responses.
Repository Structure
cmd: CLI entrypointinternal/app: root command wiring and static utility commandsinternal/discovery,internal/market,internal/transport: runtime discovery and executioninternal/ir: canonical intermediate representation for discovered toolsinternal/generator: docs, schema, and skill generation pipelineinternal/compat,internal/helpers: legacy-compatible overlays and helper commandsskills/: bundled agent skills source and generated skill docstest/: CLI, compatibility, integration, contract, and script tests
Public Repository Contract
This repository ships source, docs, tests, packaging templates, and install scripts. Generated or release-only artifacts are produced by repository scripts and are not required to exist in a clean checkout unless explicitly committed as part of a release workflow.