| Term | Chinese | One-line definition | Source |
|---|---|---|---|
| PTC | Programmatic Tool Calling (presentation) | Sends only run_code plus a generated SDK so the model composes multi-step tool calls in one program | ToolPresentationMode = native | ptc | both |
| native | native presentation | Sends the full schema of each visible tool and calls them one by one | same |
| preset | agent preset | A mountable agent composition (tools, prompts, capabilities); the directory name is the id | presets/{standard,ptc,minimal,cordis} |
| profile | dsh profile | A boot configuration under $DSH_HOME/profiles, composed from bundles plus patch layers | header of cordis.yml |
| bundle | bundle | A loadable package listed in dsh.profile.bundles, stacked in order | profiles/web/package.json |
| patch layer | patch layer | The last-applied override layer; config edits go here | Edit cordis.patch.yml, not this file |
| run_code | run_code | The only tool the model may call directly under PTC | config-catalog |
Two pairs that blur together
- preset is not profile: a preset is what the agent looks like (tools and prompts); a profile is how it boots (entry config and bundle list). Changing preset changes capability; changing profile changes the load path.
- bundle is inside profile: bundles are packages listed in the profile's package.json, stacked in order, with the patch layer after them. Patch always overrides bundle defaults.
One piece of advice
These words drift between versions. Glossary entries must carry a source, down to the file — otherwise in six months even you will not know what you meant.