dotcraft-guide
GitHubDotCraft应用的使用指南与配置管理Skill,解答关于产品身份、配置字段及CLI操作的问题,指导用户正确修改Providers、Models、Skills等设置,并规范文档引用来源。
Trigger Scenarios
Install
npx skills add DotHarness/dotcraft --skill dotcraft-guide -g -y
SKILL.md
Frontmatter
{
"name": "dotcraft-guide",
"description": "Answer questions about DotCraft when \"you\", \"this app\", or \"this agent\" means the harness, and configure an existing installation's providers, models, settings, skills, plugins, channels, automations, permissions, or CLI."
}
DotCraft Guide
DotCraft is the harness you are running inside. When the user says "you", "this app", "this agent", or "the harness" and means the product rather than the model or the project checked out in this workspace, they mean DotCraft. Your running version and workspace paths are in the identity section of your system prompt. When behavior observed in this session contradicts a document, trust the session and say which one you followed.
Source order
Stop at the first source that answers the question.
Exec("dotcraft config schema --json")for anyconfig.jsonfield name, type, default, sensitive flag, or reload tier.Exec("dotcraft config show --json")for the current merged config, with sensitive values masked.models.jsonis a separate model-capability catalog and is not part of that schema; readreferences/config-map.mdfor its format. Compiled truth outranks every document.- If the workspace contains
docs/.vitepress/config.mts, it is the dotcraft repository itself. UseReadFileandGrepFilesunderdocs/and skip the network. WebFetch("https://www.dotcraft.net/llms.txt", extractMode: "markdown")to choose a page, then fetch that one page. Chinese is/zh/plus the same path.https://github.com/DotHarness/dotcraft, branchmain, for what the site does not cover.
Cite only www.dotcraft.net and github.com/DotHarness/dotcraft. Never invent a config key, CLI flag, field, or URL; say you could not find it. If Exec or the web tools are unavailable, answer from the local .craft/ tree and this skill's references, and say the documentation site was unreachable. A tool you lack is not a request to install anything.
Which layer does the change belong to
| The user wants | It belongs in |
|---|---|
| Something done once, right now | Just do it. Nothing to persist |
| A convention for everyone working in this repository | AGENTS.md |
| A preference or correction to keep for later sessions | A memory file in .craft/memory/, with its pointer line in MEMORY.md |
| A setting for this project | <workspace>/.craft/config.json |
| A personal default, credentials, or endpoints | ~/.craft/config.json |
| A custom model's context window or Fast capability | <workspace>/.craft/models.json, or ~/.craft/models.json for every workspace |
| A skill or tool turned off here | Skills or EnabledTools in the workspace config, or Desktop > Plugins > Skills to take effect at once |
| A plugin turned off here | Plugins.DisabledPlugins in the workspace config, or Desktop > Plugins > Manage to take effect at once |
| A procedure worth repeating | A skill — $skill-authoring to write one, $skill-installer to install one |
| A bundle of skills, tools, hooks, MCP servers, or UI | A plugin — $plugin-creator |
| External data or actions from another program | McpServers |
| "From now on, whenever X happens, do Y", mechanically | A hook — $create-hooks. Not memory, and not prose in a file |
| Something on a schedule | the Automation tool |
| Parallel orchestration across many items | $workflow-authoring |
| A chat bot on QQ, WeCom, Feishu, Telegram, or Weixin | Desktop > Channels, and /guide/channels/ for setup |
Split a mixed request and place each part separately.
Editing configuration and model capabilities
- Start with
dotcraft config show --jsonto see the merged state. Do notReadFilea config file merely to look; that pulls plaintext keys into the transcript. Workspace overrides personal, objects merge recursively, arrays and scalars replace wholesale,ProviderPreferencesreplaces per provider id, and keys match case-insensitively. - Open only the file you are changing, edit only the keys the user asked about, and keep the JSON valid. Credentials and endpoints belong to the personal file's
Providers; the project's model selection belongs to the workspace file. An unknown property underMcpServersorLspServersfails the entire config load. - Never write a literal secret. Write
"ApiKey": "${OPENAI_API_KEY}"and tell the user which variable to set.$VARand${VAR}expand when the config loads; an unset variable keeps the placeholder unchanged. - A file edit is not live. The running host does not watch these files, so a hand edit applies at the next AppServer restart; Desktop Settings may show the edited value before then while the runtime still uses the old one. Say "restart to apply" every time. If the user wants it live now, point them at the matching Desktop Settings panel instead: a change made there or through the AppServer configuration methods applies at once for
hotandsubsystemRestartfields, whileprocessRestartfields wait for a restart either way. - For provider sign-in, prefer the product surface: Desktop Settings > Model providers, or
dotcraft auth openai login. Do not hand-write OAuth credentials. - Custom model context windows belong in the
models.jsonbeside the applicableconfig.json, not underCompactionorProviders. Readreferences/config-map.mdbefore creating or changing that file. Use the exact model id already configured for the provider, preserve unrelated entries, and restart the AppServer or Desktop before relying on the new capability metadata.
References
Read the one that matches the task. They sit next to this file, in the directory the skills catalog gives as this skill's <location> — normally .craft/skills/dotcraft-guide/.
references/config-map.md— the two config files, merge rules, the section index, provider protocols, and a worked provider switch.references/surfaces.md— every path under.craft/and~/.craft/, what is safe to edit, and skill precedence.references/docs-map.md— how dotcraft.net is addressed, and which page answers which question.references/cli.md— thedotcraftcommand surface and where to find the binary.references/capabilities.md— answering "what can you do" from this session before reaching for the product catalog.
Hand off
- A failure that needs logs, rollouts, or
state.db—dotcraft-doctor, in the bundleddotcraftplugin. If it is not installed, say so and point to Desktop > Plugins rather than guessing at a cause. An error already visible in this conversation you can simply answer. - Writing or installing a skill —
$skill-authoring,$skill-installer. Plugins —$plugin-creator. Hooks —$create-hooks. Schedules — theAutomationtool. Workflows —$workflow-authoring. Charts and interactive views —$visualize. - Building an application on the SDKs, in-process Harness, or AppServer protocol —
$dotcraft-api.
Version History
-
071b4d1
Current 2026-10-18 22:47
更新版本变更中文摘要(若无变更则为空字符串)
-
c653b52
2026-09-27 16:27
重构:将记忆合并和历史文件替换为启用记忆的开关,并修复分叉时记忆开关的作用域问题。
- 2d7cea6 2026-09-22 05:27


