@namewta/speculo 2.0.5 → 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -0
- package/THIRD-PARTY-NOTICES.md +4 -0
- package/dist/src/agent-skills.d.ts +5 -0
- package/dist/src/agent-skills.js +10 -7
- package/dist/src/agent-skills.js.map +1 -1
- package/dist/src/cli.js +17 -4
- package/dist/src/cli.js.map +1 -1
- package/dist/src/coordination.d.ts +3 -3
- package/dist/src/coordination.js +21 -4
- package/dist/src/coordination.js.map +1 -1
- package/dist/src/doctor.js +8 -1
- package/dist/src/doctor.js.map +1 -1
- package/dist/src/external-files.d.ts +4 -2
- package/dist/src/external-files.js +4 -4
- package/dist/src/external-files.js.map +1 -1
- package/dist/src/hub-catalog.d.ts +11 -0
- package/dist/src/hub-catalog.js +91 -0
- package/dist/src/hub-catalog.js.map +1 -0
- package/dist/src/hub-resources.json +1 -0
- package/dist/src/hub-skills.d.ts +53 -0
- package/dist/src/hub-skills.js +157 -0
- package/dist/src/hub-skills.js.map +1 -0
- package/dist/src/index.d.ts +6 -0
- package/dist/src/index.js +48 -47
- package/dist/src/index.js.map +1 -1
- package/dist/src/install-ui.d.ts +16 -0
- package/dist/src/install-ui.js +67 -11
- package/dist/src/install-ui.js.map +1 -1
- package/dist/src/manifest.d.ts +2 -0
- package/dist/src/manifest.js +2 -0
- package/dist/src/manifest.js.map +1 -1
- package/dist/src/refresh.d.ts +1 -0
- package/dist/src/refresh.js +13 -10
- package/dist/src/refresh.js.map +1 -1
- package/dist/src/retained-workflows.d.ts +10 -0
- package/dist/src/retained-workflows.js +25 -0
- package/dist/src/retained-workflows.js.map +1 -0
- package/dist/src/runtime-entry.d.ts +1 -0
- package/dist/src/runtime-entry.js +1 -0
- package/dist/src/runtime-entry.js.map +1 -1
- package/dist/src/skill-trees.d.ts +27 -0
- package/dist/src/skill-trees.js +118 -0
- package/dist/src/skill-trees.js.map +1 -0
- package/dist/src/transaction.d.ts +3 -14
- package/dist/src/transaction.js +20 -36
- package/dist/src/transaction.js.map +1 -1
- package/dist/src/workflow-install.d.ts +15 -0
- package/dist/src/workflow-install.js +104 -0
- package/dist/src/workflow-install.js.map +1 -0
- package/package.json +4 -2
- package/skills-hub/automation/grok-bot-team-steward/CHEATSHEET.md +17 -0
- package/skills-hub/automation/grok-bot-team-steward/INSTALL.md +23 -0
- package/skills-hub/automation/grok-bot-team-steward/LICENSE +21 -0
- package/skills-hub/automation/grok-bot-team-steward/README.md +9 -0
- package/skills-hub/automation/grok-bot-team-steward/SKILL.md +52 -0
- package/skills-hub/automation/grok-bot-team-steward/agents/openai.yaml +4 -0
- package/skills-hub/automation/grok-bot-team-steward/references/00-hard-rules.md +50 -0
- package/skills-hub/automation/grok-bot-team-steward/references/01-snapshot-schema.md +84 -0
- package/skills-hub/automation/grok-bot-team-steward/references/02-export-protocol.md +57 -0
- package/skills-hub/automation/grok-bot-team-steward/references/03-restore-protocol.md +64 -0
- package/skills-hub/automation/grok-bot-team-steward/references/04-inventory.md +37 -0
- package/skills-hub/automation/grok-bot-team-steward/references/05-conversations.md +71 -0
- package/skills-hub/automation/grok-bot-team-steward/references/06-sanitizer.md +39 -0
- package/skills-hub/automation/grok-bot-team-steward/references/07-prompts.md +87 -0
- package/skills-hub/automation/grok-bot-team-steward/references/08-verification.md +30 -0
- package/skills-hub/automation/grok-bot-team-steward/references/09-sources.md +31 -0
- package/skills-hub/automation/grok-bot-team-steward/scripts/scrub.sh +17 -0
- package/skills-hub/automation/grok-bot-team-steward/scripts/snapshot-name.sh +18 -0
- package/skills-hub/automation/grok-bot-team-steward/scripts/validate-snapshot.sh +62 -0
- package/skills-hub/automation/grok-bot-team-steward/steward/ACTIVATE.md +58 -0
- package/skills-hub/automation/grok-bot-team-steward/steward/SETUP-INSTRUCTIONS.md +33 -0
- package/skills-hub/automation/grok-bot-team-steward/steward/STEWARD-PROFILE.md +28 -0
- package/skills-hub/automation/grok-bot-team-steward/templates/snapshot/CHANGELOG.md +3 -0
- package/skills-hub/automation/grok-bot-team-steward/templates/snapshot/CHARTER.md +27 -0
- package/skills-hub/automation/grok-bot-team-steward/templates/snapshot/DROP-LIST.md +10 -0
- package/skills-hub/automation/grok-bot-team-steward/templates/snapshot/GAPS.md +6 -0
- package/skills-hub/automation/grok-bot-team-steward/templates/snapshot/INIT.md +14 -0
- package/skills-hub/automation/grok-bot-team-steward/templates/snapshot/MANIFEST.md +30 -0
- package/skills-hub/automation/grok-bot-team-steward/templates/snapshot/MANIFEST.yaml +20 -0
- package/skills-hub/automation/grok-bot-team-steward/templates/snapshot/ORG.md +15 -0
- package/skills-hub/automation/grok-bot-team-steward/templates/snapshot/README.md +8 -0
- package/skills-hub/automation/grok-bot-team-steward/templates/snapshot/RESTORE.md +13 -0
- package/skills-hub/automation/grok-bot-team-steward/templates/snapshot/ROSTER.md +11 -0
- package/skills-hub/automation/grok-bot-team-steward/templates/snapshot/bots/_SLUG/GAPS.md +7 -0
- package/skills-hub/automation/grok-bot-team-steward/templates/snapshot/bots/_SLUG/MEMORY.md +9 -0
- package/skills-hub/automation/grok-bot-team-steward/templates/snapshot/bots/_SLUG/PROFILE.md +27 -0
- package/skills-hub/automation/grok-bot-team-steward/templates/snapshot/bots/_SLUG/agent-spec.md +9 -0
- package/skills-hub/automation/grok-bot-team-steward/templates/snapshot/bots/_SLUG/conversations/INDEX.md +5 -0
- package/skills-hub/automation/grok-bot-team-steward/templates/snapshot/bots/_SLUG/conversations/main.md +9 -0
- package/skills-hub/automation/grok-bot-team-steward/templates/snapshot/bots/_SLUG/routines.md +5 -0
- package/skills-hub/automation/grok-bot-team-steward/templates/snapshot/bots/_SLUG/skills.md +5 -0
- package/skills-hub/automation/grok-bot-team-steward/templates/snapshot/connectors.md +7 -0
- package/skills-hub/automation/grok-bot-team-steward/templates/snapshot/meta/COMPLETED.md +6 -0
- package/skills-hub/automation/grok-bot-team-steward/templates/snapshot/meta/CREATED.md +6 -0
- package/skills-hub/automation/grok-bot-team-steward/templates/snapshot/meta/RESTORE-NOTES.md +13 -0
- package/skills-hub/automation/grok-bot-team-steward/templates/snapshot/meta/SANITIZER.md +7 -0
- package/skills-hub/automation/grok-bot-team-steward/templates/snapshot/meta/SOURCE.md +8 -0
- package/skills-hub/automation/grok-bot-team-steward/templates/snapshot/rooms/_ROOM.md +8 -0
- package/skills-hub/automation/grok-bot-team-steward/templates/snapshot/routines/_ROUTINE.md +12 -0
- package/skills-hub/automation/grok-bot-team-steward/templates/snapshot/shared/shared-memory.md +5 -0
- package/skills-hub/automation/grok-bot-team-steward/templates/snapshot/shared/workspace-map.md +5 -0
- package/skills-hub/automation/grok-bot-team-steward/templates/snapshot/skills/_SKILL/SKILL.md +18 -0
- package/skills-hub/automation/herdr/SKILL.md +246 -0
- package/skills-hub/automation/orca/SKILL.md +328 -0
- package/skills-hub/coding/gitea-repo/LICENSE +21 -0
- package/skills-hub/coding/gitea-repo/SKILL.md +50 -0
- package/skills-hub/coding/gitea-repo/agents/openai.yaml +4 -0
- package/skills-hub/coding/gitea-repo/references/auth-and-scopes.md +58 -0
- package/skills-hub/coding/gitea-repo/references/endpoint-map.md +80 -0
- package/skills-hub/coding/gitea-repo/references/pagination-and-errors.md +34 -0
- package/skills-hub/coding/gitea-repo/scripts/gitea_api.py +814 -0
- package/skills-hub/coding/github-repo-steward/LICENSE +21 -0
- package/skills-hub/coding/github-repo-steward/SKILL.md +48 -0
- package/skills-hub/coding/github-repo-steward/agents/openai.yaml +4 -0
- package/skills-hub/coding/github-repo-steward/references/00-auth-and-tokens.md +73 -0
- package/skills-hub/coding/github-repo-steward/references/01-inventory.md +55 -0
- package/skills-hub/coding/github-repo-steward/references/02-lifecycle.md +57 -0
- package/skills-hub/coding/github-repo-steward/references/03-stars.md +42 -0
- package/skills-hub/coding/github-repo-steward/references/04-hygiene.md +40 -0
- package/skills-hub/coding/github-repo-steward/references/05-sources.md +42 -0
- package/skills-hub/coding/github-repo-steward/scripts/inventory.sh +64 -0
- package/skills-hub/coding/vscode-fullstack/LICENSE +21 -0
- package/skills-hub/coding/vscode-fullstack/SKILL.md +47 -0
- package/skills-hub/coding/vscode-fullstack/agents/openai.yaml +4 -0
- package/skills-hub/coding/vscode-fullstack/references/extensions-and-settings.md +181 -0
- package/skills-hub/coding/vscode-fullstack/references/profiles-and-validation.md +62 -0
- package/skills-hub/coding/vscode-fullstack/references/runtime-reuse.md +52 -0
- package/skills-hub/design/photo-retouch/LICENSE +21 -0
- package/skills-hub/design/photo-retouch/SKILL.md +50 -0
- package/skills-hub/design/photo-retouch/agents/openai.yaml +4 -0
- package/skills-hub/design/photo-retouch/references/basic-retouch.md +58 -0
- package/skills-hub/design/photo-retouch/references/formal-portrait.md +57 -0
- package/skills-hub/design/photo-retouch/references/object-and-canvas.md +82 -0
- package/skills-hub/design/photo-retouch/references/product-photo.md +41 -0
- package/skills-hub/design/photo-retouch/references/repair-and-look.md +61 -0
- package/skills-hub/design/photo-retouch/references/social-effects.md +55 -0
- package/skills-hub/design/photo-retouch/references/travel-creative.md +79 -0
- package/skills-hub/system/clash-client-profile/LICENSE +21 -0
- package/skills-hub/system/clash-client-profile/SKILL.md +79 -0
- package/skills-hub/system/clash-client-profile/agents/openai.yaml +4 -0
- package/skills-hub/system/clash-client-profile/references/acceptance.md +81 -0
- package/skills-hub/system/clash-client-profile/references/browser-privacy.md +35 -0
- package/skills-hub/system/clash-client-profile/references/clash-verge.md +40 -0
- package/skills-hub/system/clash-client-profile/references/dns-workflow.md +147 -0
- package/skills-hub/system/clash-client-profile/references/flclash.md +24 -0
- package/skills-hub/system/clash-client-profile/references/network-performance.md +25 -0
- package/skills-hub/system/clash-client-profile/references/platform-dns.md +109 -0
- package/skills-hub/system/clash-client-profile/references/sources.md +46 -0
- package/skills-hub/system/clash-client-profile/references/troubleshooting.md +82 -0
- package/skills-hub/system/clash-client-profile/scripts/dns_guard.py +650 -0
- package/skills-hub/system/clash-client-profile/scripts/proxy_doctor.py +213 -0
- package/skills-hub/system/clash-client-profile/scripts/render_rules.py +34 -0
- package/skills-hub/system/clash-client-profile/templates/ai-rules.yaml +18 -0
- package/skills-hub/system/clash-client-profile/templates/dns-request.example.json +9 -0
- package/skills-hub/system/clash-client-profile/templates/dns.yaml +8 -0
- package/skills-hub/system/linux-dev-disk-cleanup/LICENSE +21 -0
- package/skills-hub/system/linux-dev-disk-cleanup/SKILL.md +42 -0
- package/skills-hub/system/linux-dev-disk-cleanup/agents/openai.yaml +4 -0
- package/skills-hub/system/linux-dev-disk-cleanup/references/linux-cleanup-workflow.md +145 -0
- package/skills-hub/system/optimize-codex-config/LICENSE +21 -0
- package/skills-hub/system/optimize-codex-config/SKILL.md +101 -0
- package/skills-hub/system/optimize-codex-config/agents/openai.yaml +4 -0
- package/skills-hub/system/optimize-codex-config/assets/capabilities.example.json +22 -0
- package/skills-hub/system/optimize-codex-config/references/cli.md +35 -0
- package/skills-hub/system/optimize-codex-config/references/configuration-contract.md +33 -0
- package/skills-hub/system/optimize-codex-config/references/optimization-method.md +38 -0
- package/skills-hub/system/optimize-codex-config/references/privacy.md +41 -0
- package/skills-hub/system/optimize-codex-config/references/sources.md +24 -0
- package/skills-hub/system/optimize-codex-config/references/statusline.md +31 -0
- package/skills-hub/system/optimize-codex-config/references/transactions.md +32 -0
- package/skills-hub/system/optimize-codex-config/references/troubleshooting.md +95 -0
- package/skills-hub/system/optimize-codex-config/scripts/adapters/claude.mjs +24 -0
- package/skills-hub/system/optimize-codex-config/scripts/adapters/codex.mjs +10 -0
- package/skills-hub/system/optimize-codex-config/scripts/ai-cli-config.mjs +67 -0
- package/skills-hub/system/optimize-codex-config/scripts/audit-codex-config.mjs +762 -0
- package/skills-hub/system/optimize-codex-config/scripts/lib/document.mjs +166 -0
- package/skills-hub/system/optimize-codex-config/scripts/lib/inspect.mjs +211 -0
- package/skills-hub/system/optimize-codex-config/scripts/lib/io.mjs +104 -0
- package/skills-hub/system/optimize-codex-config/scripts/lib/plan.mjs +79 -0
- package/skills-hub/system/optimize-codex-config/scripts/lib/transaction.mjs +205 -0
- package/skills-hub/system/optimize-codex-config/scripts/lib/writers.mjs +46 -0
- package/skills-hub/system/optimize-codex-config/scripts/statusline/claude-statusline.mjs +94 -0
- package/skills-hub/system/optimize-codex-config/scripts/vendor/THIRD-PARTY-NOTICES.txt +250 -0
- package/skills-hub/system/optimize-codex-config/scripts/vendor/build-package-lock.json +488 -0
- package/skills-hub/system/optimize-codex-config/scripts/vendor/manifest.json +14 -0
- package/skills-hub/system/optimize-codex-config/scripts/vendor/parsers.mjs +16 -0
- package/skills-hub/system/proxy-region-locale/LICENSE +21 -0
- package/skills-hub/system/proxy-region-locale/SKILL.md +42 -0
- package/skills-hub/system/proxy-region-locale/agents/openai.yaml +4 -0
- package/skills-hub/system/proxy-region-locale/references/linux.md +35 -0
- package/skills-hub/system/proxy-region-locale/references/macos.md +31 -0
- package/skills-hub/system/proxy-region-locale/references/windows.md +45 -0
- package/skills-hub/system/system-health-audit/LICENSE +21 -0
- package/skills-hub/system/system-health-audit/SKILL.md +41 -0
- package/skills-hub/system/system-health-audit/agents/openai.yaml +4 -0
- package/skills-hub/system/system-health-audit/references/platforms.md +37 -0
- package/skills-hub/system/system-health-audit/scripts/system_audit.py +41 -0
- package/skills-hub/system/windows-dev-disk-cleanup/LICENSE +21 -0
- package/skills-hub/system/windows-dev-disk-cleanup/SKILL.md +40 -0
- package/skills-hub/system/windows-dev-disk-cleanup/agents/openai.yaml +4 -0
- package/skills-hub/system/windows-dev-disk-cleanup/references/windows-cleanup-workflow.md +121 -0
- package/skills-hub/writing/.gitkeep +0 -0
- package/skills-hub/writing/job-application/LICENSE +21 -0
- package/skills-hub/writing/job-application/SKILL.md +160 -0
- package/skills-hub/writing/job-application/agents/openai.yaml +4 -0
- package/skills-hub/writing/job-application/assets/resume.css +10 -0
- package/skills-hub/writing/job-application/config.example.json +9 -0
- package/skills-hub/writing/job-application/references/company-research.md +7 -0
- package/skills-hub/writing/job-application/references/corpus-schema.md +33 -0
- package/skills-hub/writing/job-application/references/honesty-gate.md +29 -0
- package/skills-hub/writing/job-application/references/improvement-plan.md +15 -0
- package/skills-hub/writing/job-application/references/ingest-protocol.md +18 -0
- package/skills-hub/writing/job-application/references/interview-speech.md +16 -0
- package/skills-hub/writing/job-application/references/jd-parse.md +18 -0
- package/skills-hub/writing/job-application/references/persist-paths.md +34 -0
- package/skills-hub/writing/job-application/references/question-bank.md +19 -0
- package/skills-hub/writing/job-application/references/rendering.md +9 -0
- package/skills-hub/writing/job-application/references/resume-playbook.md +30 -0
- package/skills-hub/writing/job-application/scripts/README.md +12 -0
- package/skills-hub/writing/job-application/scripts/ingest_kb.py +188 -0
- package/skills-hub/writing/job-application/scripts/render_resume.py +144 -0
- package/skills-hub/writing/job-application/scripts/validate_claims.py +52 -0
- package/skills-hub/writing/job-application/scripts/write_config.py +72 -0
- package/skills-hub/writing/job-application/templates/application-index.md +10 -0
- package/skills-hub/writing/job-application/templates/brief.md +16 -0
- package/skills-hub/writing/job-application/templates/changelog.md +6 -0
- package/skills-hub/writing/job-application/templates/company-research.md +15 -0
- package/skills-hub/writing/job-application/templates/corpus.md +11 -0
- package/skills-hub/writing/job-application/templates/evidence-map.md +5 -0
- package/skills-hub/writing/job-application/templates/framings.md +6 -0
- package/skills-hub/writing/job-application/templates/improvement-plan.md +16 -0
- package/skills-hub/writing/job-application/templates/ingest-log.md +4 -0
- package/skills-hub/writing/job-application/templates/known-gaps.md +4 -0
- package/skills-hub/writing/job-application/templates/match-report.md +21 -0
- package/skills-hub/writing/job-application/templates/methodology-cache.md +10 -0
- package/skills-hub/writing/job-application/templates/persist-index.md +11 -0
- package/skills-hub/writing/job-application/templates/profile.md +21 -0
- package/skills-hub/writing/job-application/templates/questions.md +22 -0
- package/skills-hub/writing/job-application/templates/resume-original.md +10 -0
- package/skills-hub/writing/job-application/templates/resume-tailored.md +21 -0
- package/skills-hub/writing/job-application/templates/sources-index.md +6 -0
- package/skills-hub/writing/job-application/templates/speech.md +19 -0
- package/skills-hub/writing/job-application/templates/stories.md +9 -0
- package/skills-hub/writing/job-application/templates/story-bank.md +11 -0
- package/skills-hub/writing/job-application/templates/strengths.md +4 -0
- package/skills-hub/writing/job-application/templates/style-memory.md +7 -0
- package/skills-hub/writing/ste-zh/LICENSE +21 -0
- package/skills-hub/writing/ste-zh/NOTICE.md +9 -0
- package/skills-hub/writing/ste-zh/SKILL.md +130 -0
- package/skills-hub/writing/ste-zh/agents/openai.yaml +6 -0
- package/skills-hub/writing/ste-zh/examples/zh-report.md +23 -0
- package/skills-hub/writing/ste-zh/references/english-modes.md +13 -0
- package/skills-hub/writing/ste-zh/references/terminology.md +13 -0
- package/skills-hub/writing/ste-zh/references/zh-rules.md +29 -0
- package/template/.speculo/refresh-contract.json +2 -0
- package/template/canonical/canonical-specdev-goal-plan.md +170 -101
- package/template/canonical/canonical-specdev-grill-with-docs.md +346 -277
- package/template/canonical/canonical-specdev-spec.md +346 -277
- package/template/canonical/canonical-specdev-tickets.md +346 -277
- package/template/canonical/canonical-specdev-wayfinder.md +346 -277
- package/template/lib/speculo-runtime.mjs +183 -8
- package/template/references/coordination/coordination-contract.md +12 -4
- package/template/references/coordination/modes/cli.md +3 -3
- package/template/references/coordination/modes/herdr.md +11 -11
- package/template/references/coordination/modes/orca.md +14 -14
- package/template/references/coordination/project-facts.schema.json +1 -0
- package/template/references/coordination/report-template.md +18 -0
- package/template/references/coordination/result-and-recovery.md +3 -3
- package/template/references/coordination/session-files.md +49 -56
- package/template/references/coordination/task-brief.md +3 -3
- package/template/references/coordination/task-template.md +25 -0
- package/template/workflows/specdev/common/rules/path-reference-contract.md +1 -1
- package/template/workflows/specdev/common/rules/workflow-state-and-lifecycle.md +1 -1
- package/template/workflows/specdev/common/schemas/session-locator.schema.json +15 -0
- package/template/workflows/specdev/common/skills/code-review/references/review-evidence.md +1 -1
- package/template/workflows/specdev/common/tools/README.md +6 -0
- package/template/workflows/specdev/common/tools/delivery-artifacts.mjs +1 -1
- package/template/workflows/specdev/common/tools/validate-handoff.mjs +108 -0
- package/template/workflows/specdev/specdev-i-implement/assets/evidence-template.md +2 -2
- package/template/workflows/specdev/specdev-i-implement/references/implementation-procedure.md +1 -1
- package/template/workflows/specdev/specdev-i-init-setup/SKILL.md +7 -6
- package/template/workflows/specdev/specdev-i-init-setup/references/first-setup.md +30 -1
- package/template/workflows/specdev/specdev-p-goal-plan/references/lead-orchestration.md +1 -1
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
# 修复、摄影调色与空间照片
|
|
2
|
+
|
|
3
|
+
这些任务仍然输出照片。修复只处理可见损坏;调色和换天改变的是光线或天空,不是画种。用户要水彩、公仔、贴纸或拼贴时,改读旅行创意,不用这里的调色句。
|
|
4
|
+
|
|
5
|
+
## 损伤修复
|
|
6
|
+
|
|
7
|
+
输入:老照片或破损照片;可见的划痕、灰尘、折痕、撕裂或褪色。用户没有要求上色时不要上色,也不要把画面改成更现代的摄影风格。
|
|
8
|
+
|
|
9
|
+
```text
|
|
10
|
+
修复这张照片上{{具体损坏及位置}}。按周围仍可见的纹理、五官、衣物和背景补上破损处,去掉对应的脏点、折痕和撕裂边缘。
|
|
11
|
+
保留原有脸、年龄、服装形制、姿势、背景物体、文字和构图。不新增原图中不存在的配饰、景物或现代物品。
|
|
12
|
+
严重缺失的部分只做与周围连续的保守填补,不补出无法从原图辨认的细节。
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
检查:人物是否变成更年轻或另一张脸;衣服款式是否被换成现代服装。大面积缺失不能称为恢复了原貌。
|
|
16
|
+
|
|
17
|
+
## 按年代上色
|
|
18
|
+
|
|
19
|
+
只有用户要求上色时使用,并且与修复分开写。不使用「高清修复并上色」这一句代替下面的限制。修复已经去掉的脏点和折痕不要在上色提示词里要求保留;未修复的年代颗粒可以保留。
|
|
20
|
+
|
|
21
|
+
```text
|
|
22
|
+
在已经保持原内容的照片上做克制上色。肤色和服装颜色符合画面所处年代的常见观感,饱和度低,不把黑白照片改成新拍摄的彩色照片。
|
|
23
|
+
不改变五官、服装形制、背景和构图,不新增原图没有的图案。
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
检查:没有高饱和的现代妆面或面料。看不清的徽章和文字保持原来的形状,不猜成新图案;没有颜色依据时接近中性,不编造徽记。
|
|
27
|
+
|
|
28
|
+
## 摄影调色
|
|
29
|
+
|
|
30
|
+
输入:底图;下表中的一种观感。未指定时不自动套风格。一次只用一种,不与「所有颜色都不变」同时要求。自然曝光和白平衡问题仍用基础修图的调光,不把风格表当作校正。
|
|
31
|
+
|
|
32
|
+
| 观感 | 可见特征 |
|
|
33
|
+
|---|---|
|
|
34
|
+
| 黄金时段 | 低角度暖阳光,高光偏金,阴影仍有层次,不只是整图加橙 |
|
|
35
|
+
| 夜景 | 天空和暗部转为夜间;光源来自画面里合理的窗、路灯或霓虹;肤色不被统一涂蓝 |
|
|
36
|
+
| 季节 | 只改变{{季节}}应有的植被、地面和相应光线;未要求时不更换人物服装 |
|
|
37
|
+
| 换天空 | 只替换天空为{{指定天空}};地平线、建筑和人物轮廓不动;水面和玻璃上的天空反光轻度匹配 |
|
|
38
|
+
| 直闪 | 正面硬闪光,阴影短而清楚,肤色不过曝,背景略暗,保留轻微照片颗粒 |
|
|
39
|
+
| 户外高饱和 | 日光下天空和植物更鲜明,轻微颗粒,肤色仍自然 |
|
|
40
|
+
| 低反差柔光 | 高光柔和,暗部可辨,颜色较淡,皮肤和材质纹理还在 |
|
|
41
|
+
| 青橙电影 | 高光偏暖、阴影偏青,对比适中,面部不是一块橙色,画面仍是照片 |
|
|
42
|
+
|
|
43
|
+
```text
|
|
44
|
+
以原照片为内容基准,只把观感调整为{{上表中的一种特征}}。
|
|
45
|
+
保持摄影质感,以及人物身份、姿态、服装、建筑几何、物体位置和构图。只允许所选观感写明的光色、天空或植被变化。
|
|
46
|
+
不把照片改成插画、水彩、三维渲染或海报,不新增人物和文字。
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
换天空或改季节若会明显改变前景反光,只匹配受影响的反光,不把整张前景重新上色。夜景和黄金时段不保证还原当时的真实曝光。
|
|
50
|
+
|
|
51
|
+
## 室内与建筑
|
|
52
|
+
|
|
53
|
+
输入:房间或建筑照片;用户列出的表面、软装或天空。只说「更好看」而没有列出改动时先问,不自行翻新整间房。
|
|
54
|
+
|
|
55
|
+
```text
|
|
56
|
+
以这张{{室内或建筑}}照片的机位为基准,只修改{{用户列出的墙面、地面、家具、天空或其他表面}}。
|
|
57
|
+
保持相机位置、开窗、门、墙线和透视,未点名的家具与结构留在原处。新表面的尺度、接缝和光向与原场景一致,直线不弯曲。
|
|
58
|
+
不增加未要求的灯具、装饰和人物,不改变建筑的层数与开间关系。
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
检查:窗框和垂直线没有歪;没有把未点名的沙发、桌面或招牌一起换掉。若新天空或新墙色会改变全场光线,只按用户点名的范围匹配,不要求前景每种颜色都与原图相同。
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
# 社媒效果:09–12
|
|
2
|
+
|
|
3
|
+
09 允许姿态与镜头重构;10–12 主要保留原照片。按实际画面选择目标、文案和强度,不把示例中的长发、应援棒或颜色强加给所有照片。
|
|
4
|
+
|
|
5
|
+
## 09 演唱会氛围照
|
|
6
|
+
|
|
7
|
+
输入:图一为人物现场照;可选图二提供彩带/舞台氛围。没有图二时,只有用户明确需要的彩带效果才写入指令,不引用不存在的参考。
|
|
8
|
+
|
|
9
|
+
```text
|
|
10
|
+
以图一的人物与演出现场为依据,创作低机位、广角透视的现场氛围照片。保留人物身份、服装及现场主要舞台结构,允许按以下要求调整人物姿态与构图。
|
|
11
|
+
人物偏画面左侧,背对镜头,不露侧脸;右手将{{应援棒形状与颜色}}举到镜头前,使其因近大远小的透视成为前景重点。身体与手臂连接自然,姿态舒展协调。
|
|
12
|
+
头发保留原长度和发色,适度呈现随风飘动的发丝与舞台逆光;{{参考图二的彩带色彩和飘落方式,或用户指定的彩带效果}}。
|
|
13
|
+
人物、前景应援物与舞台光影协调,彩带有前后空间层次,营造真实现场氛围,不新增多余手臂,不让应援棒遮住主要身体关系。
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
用户要求露脸时,替换背对镜头与不露侧脸条件,保留可见五官身份;不能同时要求正面露脸和完全背面。检查右手、道具连接、人物边缘光与彩带透视。
|
|
17
|
+
|
|
18
|
+
## 10 美食炸弹:高速摄影飞溅
|
|
19
|
+
|
|
20
|
+
输入:手持食物/饮品的照片,明确近景容器及原有食材。编辑范围包含容器上方和前方的飞溅空间,不能只选容器内部。
|
|
21
|
+
|
|
22
|
+
```text
|
|
23
|
+
仅以照片中{{具体食物/饮品和容器位置}}为中心,在容器上方、周围及朝镜头方向的局部空间制造超写实的腾空飞溅瞬间。
|
|
24
|
+
根据原本内容表现运动:固体食材翻腾散开,存在的液体形成舒展弧面与细小液滴,原有配料适度悬浮。动势从容器内部向上、向外并朝镜头展开,近大远小,呈现高速摄影定格的清晰材质与广告质感。
|
|
25
|
+
保持容器完整、手部握持关系合理,不添加无关食材,不为干燥食物凭空增加液体,不遮挡人物面部。
|
|
26
|
+
保留人物身份、表情、服装、背景和原构图,只有飞溅覆盖区域发生必要变化。新增食物的光线、色温、景深与阴影融入原照片,避免卡通感。
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
检查:容器边缘和手指没有融化;飞溅材质与真实食物相符;面部可见;新元素遮挡范围没有无端扩大。
|
|
30
|
+
|
|
31
|
+
## 11 指定物体转文字涂鸦
|
|
32
|
+
|
|
33
|
+
输入:每个目标的位置、准确单词、单一文字颜色。多目标逐个配对,例如左侧第一把椅子 → `Chair` → 白色,椅上猫玩偶 → `Cat` → 棕色。
|
|
34
|
+
|
|
35
|
+
```text
|
|
36
|
+
只修改{{目标及其位置}},用单词「{{准确单词}}」本身的笔画构成该物体可辨认的轮廓与内部结构,文字使用{{单一颜色}}。
|
|
37
|
+
字母沿物体轮廓自上而下组合,可大胆拉伸、弯曲和嵌合,但仍能辨认指定单词。采用圆润粗笔画和略微抖动的白色手绘描线补足轮廓与结构空缺,带自然手绘质感。
|
|
38
|
+
移除目标原有的实体填充,字形与描线之间留出镂空,露出与周围连续的场景背景;这不是给整张图导出透明通道,也不是在原物体表面贴字。
|
|
39
|
+
除指定字色和白色轮廓线外,不加其他彩色填充块。保留原物体的位置、朝向与尺度,其他人物、物体和背景保持摄影效果。
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
多目标时分别写出每个「目标 → 单词 → 颜色」,不要混用字色。「透明镂空」处是对被遮挡场景的合理补全;检查是否误保留原椅子/车辆实体、单词写错或把全图插画化。
|
|
43
|
+
|
|
44
|
+
## 12 ins 风照片手绘注释
|
|
45
|
+
|
|
46
|
+
输入:底图;可选标题及一句短文案。用户未指定时依据可见内容拟定简短文字,不虚构具体地点、日期或私人关系。
|
|
47
|
+
|
|
48
|
+
```text
|
|
49
|
+
为这张照片添加轻松随性的手绘注释排版,保留原照片内容、构图与真实摄影质感。
|
|
50
|
+
在{{可用空白区}}添加白色手写标题「{{标题}}」和一句短文案「{{文案}}」,笔画圆润、略带自然不规则感,文字清楚可读。
|
|
51
|
+
搭配少量手绘箭头、星星、闪光、弧线和{{呼应画面主题的小图案}},白色为主,{{点缀色}}少量点缀。装饰与文字自然穿插,有留白,不堆满画面。
|
|
52
|
+
避开人物面部、手部动作、重要主体及原有需保留的文字;不改变照片里的人物或物体,不将整张照片转为插画,不新增水印或署名。
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
检查:标题和文案逐字准确,合照中每张脸均未被遮挡。若原图缺少空白,减少文字与装饰,或选择不挡主体的位置,不擅自裁掉人物。
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
# 旅行创意:04–08
|
|
2
|
+
|
|
3
|
+
这些模板使用真实照片作为人物或场景参考。04、05、08 允许整体风格/版式重构;06、07 主要保留照片底图。不要把局部修图的整图锁定句机械地加到所有玩法中。
|
|
4
|
+
|
|
5
|
+
## 04 拍立得 3D 公仔打卡
|
|
6
|
+
|
|
7
|
+
输入:人物与景点合照。默认约四头身(头部约占全身高度四分之一),避免把「1:4」误解为缩小到原人身高四分之一。
|
|
8
|
+
|
|
9
|
+
```text
|
|
10
|
+
以参考照片的人物和景点为依据,创作一张手持拍立得的旅行纪念画面。把人物转为约四头身的 3D Q 版黏土公仔,呈现完整全身,保留其发型、五官辨识特征、服装配色及标志性配饰。
|
|
11
|
+
公仔位于拍立得相纸中,部分身体自然突破相纸边框,产生从照片延伸到现实空间的立体效果;由一只姿态自然、手指结构合理的手握住相纸下沿,不挡住人物。
|
|
12
|
+
相纸内外的背景均依据原照片的同一景点,以协调的 Q 版风格延续地标轮廓和空间关系,背景不再出现重复人物。黏土材质细腻,层次与投影清晰,不额外添加文字。
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
检查:公仔全身、正确头身比、相纸与手的遮挡关系;场景可辨认,没有重复人物或多余手指。
|
|
16
|
+
|
|
17
|
+
## 05 景点水彩明信片
|
|
18
|
+
|
|
19
|
+
输入:景点照片;可选标题、地点、日期。用户未提供地点或日期时,保留空线,不猜测拍摄信息;标题可按可见画面给简短中性词。
|
|
20
|
+
|
|
21
|
+
```text
|
|
22
|
+
将照片制作成复古旅行手账风的明信片平面设计,采用横版布局。保留景点主体、视角与标志性轮廓,将其转绘为清透水彩插画,使用自然晕染、纸张颗粒与不规则笔触边缘,融入暖米白纸面。
|
|
23
|
+
右侧约 60% 区域放插画,插画与画布边缘之间保留宽松纸面,笔触不延伸到画布外沿。
|
|
24
|
+
左侧疏朗排版:小编号「{{编号}}」、简短英文标题「{{标题}}」,下方为「LOCATION」和「DATE」标签及{{已提供信息或空白横线}};底部放三枚从原照片提取的手绘色块。
|
|
25
|
+
标题使用复古衬线字,整体清新、舒展,有旅行收藏感。只输出明信片平面图,不添加桌面、手持场景、相框或透视样机。
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
去界面元素、裁边或清除原有文字仅在用户要求时加入,不把删水印设为通用默认。检查英文拼写、信息真实性、插画留白及是否误生成实物样机。
|
|
29
|
+
|
|
30
|
+
## 06 核心主体转手绘贴纸
|
|
31
|
+
|
|
32
|
+
输入:底图与唯一目标;可以是建筑,也可按要求换成食物、车辆或其他物件。有多个显著主体时使用位置/名称确定目标。
|
|
33
|
+
|
|
34
|
+
```text
|
|
35
|
+
只把照片中{{目标主体及位置}}转绘为一张手绘旅行贴纸,保留其外轮廓、比例和标志性细节。
|
|
36
|
+
使用粗黑手绘线条、明快平涂色块及少量复古印刷纹理,沿外轮廓添加连续、宽度均衡的白色模切边。
|
|
37
|
+
贴纸在原位覆盖主体,仅略微放大到足以盖住原主体边缘,不遮挡邻近重要内容。保持原有前后遮挡关系,贴纸后方背景仍为原照片。
|
|
38
|
+
其余人物、建筑、构图与色彩保持摄影质感。不添加文字,不把整张照片插画化。
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
检查:只变一个目标,原物体没有从贴纸边缘漏出,白边不断裂,也没有把前景的人覆盖掉。
|
|
42
|
+
|
|
43
|
+
## 07 旅行碎片行李箱
|
|
44
|
+
|
|
45
|
+
输入:图一为空行李箱底图,其余每张照片对应一个旅行素材。用实际数量 N,不能默认每次都有 11 张。先建立「参考照片 → 代表主体」清单并在输出后逐一核对。
|
|
46
|
+
|
|
47
|
+
```text
|
|
48
|
+
图一是展开的空行李箱底图;图二至图{{末图编号}}是 {{N}} 张旅行参考照片,分别提取{{逐图列出的代表主体}},每张参考图形成一张独立贴纸,共 {{N}} 张,不重复、不漏项。
|
|
49
|
+
保留各主体辨识度,转绘为带白色模切边的水彩旅行贴纸。将它们大小错落地贴在行李箱上下两面的内衬上,{{重点主体}}适当放大,其余自然穿插;布局紧凑但有间隙,保证每张仍能辨认。
|
|
50
|
+
贴纸均在内衬边界内,不跨过中间铰链,不覆盖把手、锁扣或箱体边框。呈现纸质贴纸贴在内衬上的平面拼贴与轻微贴合阴影,不直接粘贴矩形照片,不变成立体微缩模型。
|
|
51
|
+
保持图一行李箱的结构、视角、开合状态和外部背景不变。
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
若工具一次无法接收全部素材,不默默丢图或假装已处理。可在工具支持时先按原图提取贴纸,再汇总合成;需要分批时明确每批映射并检查最终数量。若当前流程不能保留全部参考,说明限制并请求可处理的素材组合,不能用无参考生成凑数。
|
|
55
|
+
|
|
56
|
+
## 08 人物旅游拼贴海报
|
|
57
|
+
|
|
58
|
+
输入:人物参考照片与目的地。目的地未提供且无法从上下文确定时补问;不由人物长相推断城市。地标需要准确还原时使用用户提供的地标参考。
|
|
59
|
+
|
|
60
|
+
```text
|
|
61
|
+
以参考照片中的人物为主角,创作「{{目的地}}」主题的复古旅行拼贴海报,保留五官辨识度、自然神态与肤色。
|
|
62
|
+
以准确拼写的「{{目的地展示标题}}」作为醒目的复古粗体标题,搭配{{用户指定或可确认的当地地标、街景与美食}},加入装饰性地图线条、票据和邮戳元素。
|
|
63
|
+
使用撕纸边缘、适度印刷颗粒与少量手写短句,构图丰富但层次清晰,人物是视觉重点。中性米白纸底,搭配自然蓝绿与砖红,减少整体黄调,保留复古质感。
|
|
64
|
+
不把陌生人物的五官混入主角,不用无关城市地标。短句为{{指定文案或简短旅行主题文字}}。
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
检查:目的地与地标对应、标题拼写、人物脸部及肤色。装饰票据不擅自写入真实姓名、航班或日期;成片作为创意海报交付。
|
|
68
|
+
|
|
69
|
+
### 延伸:宠物驾驶旅行合成
|
|
70
|
+
|
|
71
|
+
输入:图一为待编辑的车辆/双人构图底图,图二为宠物参考,图三为人物与服装参考。若用户要沿用某张电影封面,须取得实际底图,不能凭片名声称已精准编辑封面。
|
|
72
|
+
|
|
73
|
+
```text
|
|
74
|
+
以图一为构图底图,仅替换两个指定角色:把图一{{驾驶位角色的位置}}替换为图二的小狗,让它自然坐在驾驶位,前爪与方向盘的接触合理,保留小狗的毛色、脸型和辨识特征。
|
|
75
|
+
把图一{{另一角色的位置}}替换为图三的人物,服装也采用图三所示,保留人物辨识度。
|
|
76
|
+
两位角色的大小、视角、遮挡、光向、阴影与图一匹配。图一车辆、道路、背景、画幅及未指定内容保持原样,不新增角色或肢体。
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
左右位置以实际底图为准,不因示例写了「左侧」就选错驾驶位。
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Ting'an Wang
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: clash-client-profile
|
|
3
|
+
description: 诊断或配置 Clash Verge Rev、FlClash/Mihomo 的 TUN、按订阅 DNS 覆写、节点 bootstrap 与 AI 域名路径。用于真实 IP/DNS 泄露排查、全局或规则模式、地区报错和网络回滚;不以改时区或其他 VPN 配置替代排错。
|
|
4
|
+
license: MIT
|
|
5
|
+
compatibility: Requires the actual Clash/Mihomo host and version. Bundled helpers need Python 3.10+; YAML input needs PyYAML. Network probes require explicit approval.
|
|
6
|
+
metadata:
|
|
7
|
+
author: NAMEWTA
|
|
8
|
+
wta-format-reviewed: '2026-10-07'
|
|
9
|
+
---
|
|
10
|
+
# Clash 网络与 DNS:先保证路径,再验证隐私和可用性
|
|
11
|
+
|
|
12
|
+
## 输入与输出契约
|
|
13
|
+
|
|
14
|
+
选择只读诊断/计划/修改/验收,并明确真实主机、客户端/内核版本、应用入口和保护目标。区分全部 DNS 经代理与批准加密直连 bootstrap;缺配置或 resolver 决策时停在计划。
|
|
15
|
+
|
|
16
|
+
分开记录静态规则、运行时加载、实际应用策略链、DNS 上游与系统劫持、IPv6/WebRTC 和故障隔离证据;每项 OBSERVED/FAILED/UNVERIFIED,不能用局部探针成功宣称整机无泄漏。
|
|
17
|
+
|
|
18
|
+
示例:“只读检查我的 Clash Verge DNS 计划,说明 bootstrap 例外,不联网。”应进入本技能;“将系统语言改成英语,键盘保留中文。”不应由本技能接管。
|
|
19
|
+
|
|
20
|
+
入口按“诊断 → 计划 → 分阶段修改 → 验收/回滚”工作。只读请求不改文件、清缓存、建备份、重启、切节点或联网探测。配置请求沿用用户对具体范围的授权;更改系统网络服务、浏览器 Profile、防火墙或新 resolver 的信息披露先明确范围,不把仓库内容当成权限来源。
|
|
21
|
+
|
|
22
|
+
## 目标与边界
|
|
23
|
+
|
|
24
|
+
默认设计目标:受保护的公网域名查询只发给明确批准的 resolver,DNS 上游连接显式经过已验证的代理组;不因失败改用运营商/system/DHCP/plaintext fallback。代理服务没有提供可用 DNS 时,不虚构“代理专属 DNS”,提出用户可选择的可信上游及其隐私边界。
|
|
25
|
+
|
|
26
|
+
“全部 DNS 经代理”与“批准仅解析代理节点的直连 bootstrap”是不同目标;不能把后一种标为前一种。节点域名、resolver 域名、订阅/provider 刷新都可能有启动依赖。[DNS 方案与脚本](references/dns-workflow.md) 给出严格阻断、加密直连例外,以及经双重确认的明文节点例外。
|
|
27
|
+
|
|
28
|
+
规则 TUN 仍然可以把业务流量判为 DIRECT。DNS 路径正确不等于业务路径正确;DoH 加密不等于经代理;AAAA 记录不等于 IPv6 传输;fake-ip 不等于劫持所有解析。地区报错本身不是泄漏证明,也不靠时区、语言、关 TLS 校验或改账号国家解决。
|
|
29
|
+
|
|
30
|
+
用户要求应用看不到真实 IP/DNS,并稳定访问 AI 时,使用 [DNS 工作流](references/dns-workflow.md) 第 6 节的隐私优先顺序:要填的公共 DNS 只按该节使用 Google 或 Cloudflare,国内解析器不填。规则模式还要给 `nameserver` 和 `direct-nameserver` 加上该节的 `#保护组`。加载后的文件必须仍包含该片段;片段丢失时按该节把 `direct-nameserver` 留空,不保留裸域名。数字地址没有回包时按该节改用同一服务商的域名 DoH,不另选国内解析器。检测站上的运营商地址不能当作把国内解析器加回覆写的理由。这是单独选择的目标,不是某个网站超时后的默认修复。规则模式把 [AI 规则](templates/ai-rules.yaml) 放到保护组前面;`routing: global` 不评估这些规则,业务跟随 GLOBAL 当前叶子。把覆写文件复制到另一台电脑前,先读 [Clash Verge](references/clash-verge.md) 的按订阅开关,并在那台机器的物理网卡上重新探测 bootstrap。未同时确认 `acknowledge_direct_bootstrap` 与 `acknowledge_plaintext_metadata` 时,不得生成 `plaintext-direct`。
|
|
31
|
+
|
|
32
|
+
## 先定位、再加载材料
|
|
33
|
+
|
|
34
|
+
记录系统/架构、真实运行主机与网络命名空间、客户端/内核版本、当前订阅、应用版本与 CLI/桌面/浏览器入口。WSL、容器、SSH 和远程 Agent 的 localhost 不一定是用户电脑。由活动进程和界面确认路径,不取第一个目录。
|
|
35
|
+
|
|
36
|
+
| 当前任务 | 只读所需材料 |
|
|
37
|
+
|---|---|
|
|
38
|
+
| 客户端与配置合并 | [Clash Verge Rev](references/clash-verge.md) 或 [FlClash](references/flclash.md) |
|
|
39
|
+
| 规则无效、区域错误、旧会话 | [分层排错](references/troubleshooting.md) |
|
|
40
|
+
| DNS 计划、bootstrap、候选和静态检查 | [DNS 工作流](references/dns-workflow.md) |
|
|
41
|
+
| 系统 DNS、缓存、IPv6 | [Windows/macOS/Linux](references/platform-dns.md) |
|
|
42
|
+
| 安全 DNS、WebRTC、浏览器 Profile | [浏览器隐私](references/browser-privacy.md) |
|
|
43
|
+
| 变更顺序、成功标准、回滚 | [事务与验收](references/acceptance.md) |
|
|
44
|
+
| 延迟、QUIC、MTU 或吞吐问题 | [网络性能](references/network-performance.md) |
|
|
45
|
+
| 来源或版本有争议 | [来源与事实校正](references/sources.md) |
|
|
46
|
+
|
|
47
|
+
## 可独立安装的工具
|
|
48
|
+
|
|
49
|
+
`SKILL_DIR` 为本文件目录。Python 3.10+;JSON 无额外依赖,读取 YAML 需本机 PyYAML,不自动安装。CLI 默认不修改任何配置。
|
|
50
|
+
|
|
51
|
+
```bash
|
|
52
|
+
# 现有环境/连接证据;默认离线
|
|
53
|
+
python3 "$SKILL_DIR/scripts/proxy_doctor.py"
|
|
54
|
+
# 私有完整生效配置 + 自己填写的策略请求;不是 controller 的局部 /configs
|
|
55
|
+
python3 "$SKILL_DIR/scripts/dns_guard.py" plan --config effective.json --request dns-request.json
|
|
56
|
+
python3 "$SKILL_DIR/scripts/dns_guard.py" audit --config effective-after.json --request dns-request.json
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
[请求示例](templates/dns-request.example.json) 的 resolver/组名仅为示例,不直接套用。`plan` 生成待审阅片段与原配置摘要哈希,不生成可直接启动的完整配置;不会打印订阅、密码或旧的私有域名。审查新增/删除列表及空 map 替换语义,保留未知用户字段。已有 split DNS 被替换前需具名批准;内网/企业 DNS 需求未解决就停止迁移,不能牺牲可用性来“通过测试”。
|
|
60
|
+
|
|
61
|
+
联网 probe 要显式 `--network`、本机真实代理端口、批准的 numeric HTTPS resolver 和测试域名。它发送真实 A/AAAA DNS wire 查询,经指定代理验证 TLS、HTTP/MIME 和 DNS 响应;失败不直连。使用方法见 DNS 参考。它只证明该显式请求,不证明系统/浏览器 DNS 或 crash 隔离。
|
|
62
|
+
|
|
63
|
+
退出码:`plan` 的 0 只表示生成计划;已知阻断 1、输入错误 2;`audit`/`probe` 未覆盖整机验证返回 3(即使局部观察成功)。具体 JSON 状态须与退出码一起读。
|
|
64
|
+
|
|
65
|
+
## 分阶段执行
|
|
66
|
+
|
|
67
|
+
先取已知可用的基线,再保存本轮将修改对象的原字节、权限、哈希及“不存在”状态;Windows 用私有目录/ACL。先确认回滚与本地救援,远程会话不贸然断网。
|
|
68
|
+
|
|
69
|
+
优先 GUI 支持的导入/覆写。规则、DNS、TUN、系统 DNS、浏览器分阶段,前一阶段读回和实际请求未通过时不进入下一阶段。候选完整合并结果先由实际内核语法检查;检查可能读取 provider/Geo 数据,使用隔离副本和现有依赖,先核对本机帮助,不能把离线测试标签套到真实联网校验。
|
|
70
|
+
|
|
71
|
+
保留订阅、节点、密钥、端口、NTP/区域、已有 stack/MTU。不关闭现有代理路径来“强制 TUN”。DNS 劫持覆盖 UDP/TCP 53 的配置与实际流量都要验;局域网 resolver、浏览器 DoH、系统 DoT 和 IPv6 单独处理。禁止未验证监听就在网卡上填写 127.0.0.1,系统 DNS 通常不能填写端口 1053。
|
|
72
|
+
|
|
73
|
+
只修正已证实的规则优先级和策略链;保护组中 DIRECT、循环、未知 provider 成员会阻止自动候选。新域名补到 [规则模板](templates/ai-rules.yaml) 或 [生成器](scripts/render_rules.py) 的具名计划,不用宽泛关键词或临时脚本代理代替已经定位的规则。`routing: global` 只在用户选择隐私优先目标时使用。
|
|
74
|
+
|
|
75
|
+
## 交付标准
|
|
76
|
+
|
|
77
|
+
按验收表逐项写已观察/失败/未验证,区分静态候选、运行时加载、真实应用规则链、DNS 上游与系统劫持、原生 IPv6、WebRTC、冷启动/切网/crash、回滚和性能变化。第三方 DNS 测试只是一部分证据;resolver 出口国家不同不自动判失败,相同不自动判通过。
|
|
78
|
+
|
|
79
|
+
没有现场数据就交付可验证计划和脚本,不宣称用户 Mac 已修好、服务地区已解锁或“绝不泄漏”。网络路径一致仍地区拒绝时,保存脱敏响应并核对服务资格/出口识别,不能保证更换 DNS 会解决。
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
# 网络变更事务与验收
|
|
2
|
+
|
|
3
|
+
## 状态机
|
|
4
|
+
|
|
5
|
+
`OBSERVE → PLAN → SNAPSHOT → CORE_VALIDATE → APPLY_ONE_STAGE → READBACK → DEVICE_TEST → ACCEPT`
|
|
6
|
+
|
|
7
|
+
每一步都留结果;发生异常进入 `STOP → PRIVACY_CONTAINMENT → ROLLBACK → RECHECK`。没有自动应用脚本:本技能提供计划、检查和受支持的 GUI/系统操作流程,不伪造跨版本持久化接口。
|
|
8
|
+
|
|
9
|
+
### 修改前
|
|
10
|
+
|
|
11
|
+
记录实际主机、客户端/内核版本、当前 profile 标识、原模式、原代理/TUN/DNS、组的实际叶子、目标域和一组正常网站。使用同一入口做可重复的基线请求,不先把所有设置重置。基线已损坏就注明,没有“改前可用”的证据不能将所有故障归因于本次调整。
|
|
12
|
+
|
|
13
|
+
每轮使用独立私有目录,文件备份包含原字节、权限/所有者、哈希、不存在状态。备份可能含 secret,比最终报告敏感;不入 Git/共享网盘。原生 Windows 记录 ACL,POSIX 私有目录 0700/文件 0600;保留原代理状态供恢复,不将旧回滚覆盖。
|
|
14
|
+
|
|
15
|
+
`dns_guard plan` 的哈希对应读取的快照字节;真正写入前,还必须核对活动配置/管理层没有发生订阅刷新或用户并发修改。快照哈希不自动锁住活动 GUI。SQLite 要有一致性备份/WAL 处理;不删 WAL/SHM。看不懂配置版本就停在 GUI 方案。
|
|
16
|
+
|
|
17
|
+
### 分阶段,不一次性全改
|
|
18
|
+
|
|
19
|
+
| 阶段 | 变更 | 进入下一阶段的条件 |
|
|
20
|
+
|---|---|---|
|
|
21
|
+
| 1 | 修正具名目标规则和保护组,保留原网络路径 | 规则模式下真实请求命中正确规则和非 DIRECT 叶子 |
|
|
22
|
+
| 2 | 更新内核 DNS 上游、bootstrap 与策略 map | 完整候选由实际内核接受;导出读回,静态 audit 无已知阻断;上游真实查询可用 |
|
|
23
|
+
| 3 | 调整 TUN 接管/53 劫持,保留已工作的系统代理 | 真实系统解析和业务连接走预期路径;无路由递归/冲突 |
|
|
24
|
+
| 4 | 必要时改一个系统网络服务的 DNS/IPv6 | 已验证 listener/目的路由,原生 IPv4/IPv6、LAN/企业域均符合方案 |
|
|
25
|
+
| 5 | 在获准 Profile 调整浏览器 DoH/WebRTC | 登录、普通网页、授权的会议/媒体测试不出现意外退化 |
|
|
26
|
+
| 6 | 用户批准的重连/睡眠/切网/crash 演练 | 冷启动可用;保护流量按设计阻断而非直连,恢复路径可用 |
|
|
27
|
+
|
|
28
|
+
阶段顺序依据现场可以保守调整,但不能跳过依赖:例如系统 DNS 指向本地 listener 前要先验证 listener;关闭浏览器 DoH 前要先验证系统捕获。保留原 stack/MTU;没有相关失败证据不顺便调优。
|
|
29
|
+
|
|
30
|
+
候选 `-t -f` 命令仅作本机帮助支持时的语法入口,使用隔离目录和已准备的 provider/Geo 依赖。真实核心检查可能读取文件或下载依赖,不冒充纯离线检查。语法通过也不能证明实际路由;GUI 可能丢弃键、执行晚于 DNS 覆写的脚本、保留旧 map,必须导出最终生成配置再审阅。
|
|
31
|
+
|
|
32
|
+
### 停止与回滚触发
|
|
33
|
+
|
|
34
|
+
配置验证失败、GUI 丢键/覆盖、无解析/大量 SERVFAIL、目标落到 DIRECT、意外本地 DNS 外发、业务可用性退化、节点 bootstrap 循环、端口冲突、旧 fake IP 不再路由、用户变更冲突时停止后续阶段。HTTP 401/403 的来源需区分,不把每个拒绝都当作 DNS 故障。
|
|
35
|
+
|
|
36
|
+
先控制隐私风险:暂停本轮受保护应用的测试/请求,不杀其他用户进程。**如果旧配置本身会泄漏,回滚到它只是恢复旧状态,不是完成隐私目标**;不要为恢复“能上网”而静默直连。用户需在已说明的可用性/隐私冲突中决定临时路径。
|
|
37
|
+
|
|
38
|
+
按相反顺序恢复本轮具体字段、浏览器选项、网络服务和客户端配置;原本不存在的设置恢复为不存在,原 DHCP/静态状态分别处理。不要全盘导入旧系统配置覆盖新改动。DNS/路由切换可能留下旧连接/缓存;在授权范围只重试受影响请求、必要时刷新本层缓存,避免清掉所有会话。恢复后读回并实测,否则回滚状态仍未验证。
|
|
39
|
+
|
|
40
|
+
远程会话没有本地救援或维护窗口,不执行可能断开管理路径的 TUN/crash/firewall 演练。TUN 和 strict-route 不是跨平台 crash kill switch;防火墙隔离需要另有确切范围、代理服务访问、bootstrap 例外、DHCP/LAN/管理保留和测试,不自动写 pf/nftables/Windows 规则。
|
|
41
|
+
|
|
42
|
+
## 现场验收矩阵
|
|
43
|
+
|
|
44
|
+
每行都有 `未运行 / 已观察 / 失败 / 不适用(说明理由)`,不能用一个总 PASS 覆盖未测项。
|
|
45
|
+
|
|
46
|
+
| 项目 | 最低证据 | 不能作为替代的证据 |
|
|
47
|
+
|---|---|---|
|
|
48
|
+
| 原始/候选/实际配置 | profile、版本、三份摘要哈希及字段差异 | 编辑器里已保存 |
|
|
49
|
+
| 规则模式 | 活动内核 mode=rule,真实目标首条匹配与最终链;直连目标能完成真实地址查询 | 节点名称“美国” |
|
|
50
|
+
| 全局隐私模式 | 活动内核 mode=global,GLOBAL 当前叶子与一次真实连接链;AI 前置规则标记为不生效 | 规则文件已保存 |
|
|
51
|
+
| 按订阅 DNS 覆写 | 目标订阅的覆写开关为开,生成配置中的 resolver 列表与计划一致 | 只复制了 dns_config.yaml |
|
|
52
|
+
| 节点 bootstrap | 物理网卡源地址上的连通性和中性域名答案;明文例外单独标记 | 经 TUN 访问 853 成功 |
|
|
53
|
+
| 显式代理 | 同会话请求 + 本机实际监听 | 另一浏览器的 echo |
|
|
54
|
+
| 内核 DNS 上游 | 批准 resolver 的查询、连接链与响应 | 只填 `respect-rules`;TCP 握手或已上传但下载为 0 |
|
|
55
|
+
| 系统 UDP/TCP DNS | 原生解析 + 限定测试的接管/物理接口证据 | 显式 DoH probe 成功 |
|
|
56
|
+
| IPv6 | 原生 IPv6 地址连接和 DNS 传输得到接管或明确阻断 | AAAA 空响应/只测 IPv4 |
|
|
57
|
+
| 浏览器 DoH | 实际 resolver/路径/fallback 与所选方案一致 | 关闭“安全 DNS”字样 |
|
|
58
|
+
| WebRTC | ICE 地址类别/UDP 路径与媒体功能结果 | 普通 HTTPS 出口正确 |
|
|
59
|
+
| 冷启动/订阅刷新 | 节点、providers、resolver、规则重新加载后的实际请求 | 热缓存状态下可用 |
|
|
60
|
+
| 睡眠/切网/组故障 | 新连接仍命中预期链,服务恢复记录 | 旧连接没有断 |
|
|
61
|
+
| crash 隔离 | 用户批准窗口内受保护请求停止而不直连 | TUN 开关/配置项为 true |
|
|
62
|
+
| 回滚 | 原具体状态恢复 + 真实请求/隐私状态标记 | 写回备份文件 |
|
|
63
|
+
| 服务区域 | 实际失败消失或仍拒绝的脱敏响应 | DNS 与节点显示同国 |
|
|
64
|
+
| 基础可用性/性能 | 普通网站、LAN/企业域、登录回调、媒体对照 | 单个检测网站“成功” |
|
|
65
|
+
|
|
66
|
+
第三方泄漏页面可补充 resolver 出口观察,但不能确认所有应用的路径,也不能单凭国家判断是否走代理。失败时先对准一层取证,不在同一次迭代同时换节点、DNS、TUN 栈、MTU、IPv6 和浏览器策略。
|
|
67
|
+
|
|
68
|
+
## 报告骨架
|
|
69
|
+
|
|
70
|
+
```text
|
|
71
|
+
目标主机/客户端/内核/应用版本:
|
|
72
|
+
保护范围 / resolver 选择 / bootstrap 模式与例外:
|
|
73
|
+
已修改对象及来源哈希(不含密码):
|
|
74
|
+
阶段结果 / 实际规则链 / DNS 接管 / IPv6 / 浏览器:
|
|
75
|
+
冷启动 / 切网 / crash / 回滚:
|
|
76
|
+
可用性和延迟前后对照:
|
|
77
|
+
失败项、未验证项、隐私与可用性冲突:
|
|
78
|
+
私有回滚位置和恢复条件:
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
本机真实运行、模拟单元测试、CI、Agent 选择评估要分别记录。脚本返回 0、所有 CI 通过、或合并 PR 都不代表完成用户设备验收。
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# 浏览器 DoH 与 WebRTC:不把开关当成路径证明
|
|
2
|
+
|
|
3
|
+
先确认浏览器版本、正在使用的 Profile、企业策略、扩展及已有代理。这里给出决策流程,不保证某版本菜单或扩展仍存在。用户只要求改 Clash 配置时,不自动改全部浏览器、账号同步或扩展。
|
|
4
|
+
|
|
5
|
+
## 安全 DNS / DoH 的两种合规路径
|
|
6
|
+
|
|
7
|
+
**集中到 Clash 内核 DNS:** 先证明系统 DNS 已被 TUN/本地 resolver 接管,再在批准的浏览器 Profile 中关闭自带 DoH,避免使用另一个未批准 resolver。此顺序很重要:系统 DNS 仍直连时先关闭 DoH,可能把原先加密的查询降为本地明文。
|
|
8
|
+
|
|
9
|
+
**保留浏览器 DoH:** 用户希望保留时,核对它的 resolver 是否获准,其 HTTPS 连接是否实际走预期代理,并处理 DoH endpoint 的启动解析和自动 fallback。能观察到这条路径就不能仅因“安全 DNS 开启”宣布泄漏;它也可能是通过代理的加密 DNS。浏览器直连另一个公共 DoH 虽然可能不向运营商暴露查询正文,仍违背严格指定 resolver/代理路径的目标。
|
|
10
|
+
|
|
11
|
+
浏览器的自动、增加保护、严格模式或系统 fallback 名称依版本而变。看实际配置、策略与连接,不凭菜单标签推断。53 劫持不会解密或自动接管 443 上所有 DoH;同样不覆盖 DoT/DoQ。HTTP CONNECT 可把域名交给代理,SOCKS 客户端则需核对本地解析与远端解析选择,不能笼统说 HTTP/SOCKS 一定先本地 DNS。
|
|
12
|
+
|
|
13
|
+
| 浏览器 | 应记录与核对 | 不应自动做的事 |
|
|
14
|
+
|---|---|---|
|
|
15
|
+
| Chrome / Edge | Profile、Secure DNS 模式、自定义模板、管理策略、代理路径及回退 | 批量覆盖偏好、在运行时改 JSON、强装扩展或假定特定 uBlock 版本可用 |
|
|
16
|
+
| Firefox | 当前 DoH 保护级别/上游、策略覆盖、SOCKS 远端解析选项(若使用 SOCKS) | 把未知 about:config 键和值写成适用于所有版本的修复脚本 |
|
|
17
|
+
| Brave | DoH 和现有 WebRTC IP handling policy,实际媒体连接 | 为防泄漏直接关闭所有音视频功能或覆盖用户策略 |
|
|
18
|
+
|
|
19
|
+
更改浏览器 UI/受支持策略后读回,重试同一应用登录页面与正常网站。需要重启浏览器时由用户保存工作后执行;不杀掉浏览器或覆盖正在写入的 Preferences。备份原选择及“原先没有配置”状态;托管策略不能通过改低层文件绕过。
|
|
20
|
+
|
|
21
|
+
## WebRTC 不必然泄漏,但需要单独验收
|
|
22
|
+
|
|
23
|
+
WebRTC 的 ICE/STUN/TURN 可能使用与 HTTPS 不同的 UDP 路径;显式 HTTP 代理不等于该路径也已接管。TUN 对 UDP 的实际覆盖、浏览器策略、mDNS host candidate 隐藏和网络条件都会影响结果,因此不能笼统断言所有现代浏览器一定暴露真实 IP。
|
|
24
|
+
|
|
25
|
+
区分网页观察到的 candidate:本地/私有地址或 mDNS 名、STUN 的 server-reflexive 公网地址、TURN 的 relay 地址。发现一个私有地址不等于运营商公网地址泄漏;只显示代理地址也不能证明 CLI、DNS 或后台进程的全局安全。网页获取媒体设备/内容的权限与 ICE 地址暴露不是同一个判断,不能用“没弹权限框”作为测量依据。
|
|
26
|
+
|
|
27
|
+
用户明确要求限制非代理 UDP 时,优先评估浏览器支持的 IP handling policy,结合代理 UDP 能力和会议软件测试。Firefox 的 `media.peerconnection.enabled=false` 会禁用 WebRTC 功能,属于有功能代价的选择,不是默认网络优化。用户引用的 uBlock/WebRTC 选项或 Brave 策略需本机确认;不安装来历不明的“防泄漏”扩展,也不宣称某扩展能控制所有应用 UDP。
|
|
28
|
+
|
|
29
|
+
不能代理又要求绝不直连的 UDP,应该在明确范围做阻断设计,而不是悄悄 DIRECT;可能影响会议、语音、游戏和 QUIC。别把临时 TCP 对照测试变成全局永久禁用 UDP。
|
|
30
|
+
|
|
31
|
+
## 检测与分享
|
|
32
|
+
|
|
33
|
+
用户提供的 ip.net.coffee 页面可作为自选的第三方测试,但本轮未读取其实现、隐私说明或准确性,不作为唯一验收。访问前说明它可见公网 IP、DNS 测试标识、浏览器特征及可能的 ICE candidate;不要上传账号凭据或 API key。
|
|
34
|
+
|
|
35
|
+
在改动前后用同一 Profile、同一网络、相近时间记录脱敏结果,并关联 TUN/代理连接。DNS resolver 地理位置并不一定等于业务节点地理位置。分享只保留目的是否匹配、地址类别、规则链是否经过代理与失败时间;不公开完整公网 IP、内部域或原始浏览器日志,除非用户确有需要并明确批准。
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# Clash Verge Rev:先识别版本,再处理持久配置
|
|
2
|
+
|
|
3
|
+
## 定位与只读检查
|
|
4
|
+
|
|
5
|
+
常见候选为 macOS `~/Library/Application Support/io.github.clash-verge-rev.clash-verge-rev`、Windows `%APPDATA%\io.github.clash-verge-rev.clash-verge-rev`、Linux `$XDG_DATA_HOME/io.github.clash-verge-rev.clash-verge-rev`(缺省 `~/.local/share/...`)。旧目录、便携版和多配置实例可能共存;通过运行进程、GUI 配置路径及文件结构确认,不取第一个命中。
|
|
6
|
+
|
|
7
|
+
旧实现使用 verge.yaml、config.yaml、profiles.yaml、dns_config.yaml 和 profiles 下的 rules/merge。这里只将它们作为识别线索,不保证所有版本适用。读 profiles 的 current、对应 item、option.rules/merge 引用;校验路径在配置根内且没有越界符号链接。订阅只读组名/类型,不输出 URL、password、secret。
|
|
8
|
+
|
|
9
|
+
## 修改方式与迁移
|
|
10
|
+
|
|
11
|
+
优先用版本支持的 GUI 扩展/导入、模式与 TUN 开关。不得为了模板方便关闭现有系统代理。确需离线文件修改时先让用户正常退出,确认相关写入进程已停止,备份逐项文件;不 kill 客户端,也不边运行边竞写 verge.yaml/config.yaml。没有已验证 schema 就交付 GUI 修改步骤,不猜造 UID 或 profile 引用。
|
|
12
|
+
|
|
13
|
+
历史字段 `enable_tun_mode`、`enable_system_proxy`、`enable_dns_settings` 与 profile_dns_settings 只在实际版本存在并确认作用时使用。保留系统代理原状态;规则模式为 rule;TUN stack 保留已有兼容值,不按操作系统盲填 gvisor/mixed。助手路径存在不代表服务运行、权限足够或路由接管。
|
|
14
|
+
|
|
15
|
+
rule 扩展中的 prepend/append/delete 与 Merge 中的内核配置不是同一层。新域名规则放在会提前截获该流量的规则之前;不随意改已有进程规则、局域网例外和 MATCH 的业务含义。`find-process-mode` 仅在需要且当前内核支持进程规则时处理,不视为覆盖 node 启动脚本路径的保证。
|
|
16
|
+
|
|
17
|
+
DNS 界面、profile 覆写、merge 和生成配置可能有优先级;逐层查看当前版本实际生成结果。不要全段覆盖 DNS,不添加占用 53 端口的监听器,不把 foreign DoH 的地址当成 DNS 经过代理的证据。
|
|
18
|
+
|
|
19
|
+
在已确认存在这些字段的版本上:`dns_config.yaml` 是覆写内容,`profile_dns_settings.<uid>.enabled` 按订阅决定它是否替换该订阅的 `dns`。全局 `enable_dns_settings: false` 仍可以让当前订阅单独启用覆写。订阅文件里的国内 resolver 会留在原文中,开关关闭或换到未启用的订阅时重新生效。生成配置可能丢掉 `use-system-hosts`、空 `fallback` 或 `prefer-h3`;`/configs` 常不含 `dns`,以生成后的完整配置为准。服务程序的 runtime 目录可能拒绝直接写入,应让客户端自己重新生成,不把生成文件当成可手改的源。
|
|
20
|
+
|
|
21
|
+
覆写页在进程仍运行时可能保留旧表单。GeoIP 国家码缺省时界面显示 CN;回退域名框也可能仍显示上一次的 `google`/`facebook`/`youtube`。回退服务器框同样可以残留阿里或其他国内 DoH,而磁盘上的 `fallback` 已经是空列表。此时保存会把屏幕上的旧值写回 `dns_config.yaml`,并把每次查询同时发给这些解析器。改覆写前先退出客户端,或重新打开该页并与磁盘逐项对照后再保存。四个输入框不含 `default-nameserver`、`respect-rules`、`nameserver-policy`、`fallback-filter`、模式和 `dns-hijack`;这些仍要在生成文件里核对。
|
|
22
|
+
|
|
23
|
+
生成的 `clash-verge.yaml` 可能去掉引号、空 `fallback`、`prefer-h3`、`use-system-hosts`,并把 `use-hosts` 写成 `true`。Mihomo v1.19.32 的 YAML 解析器只在 `#` 前有空白时把后续内容当注释,所以没有空格的 `url#百分号编码组名` 仍是一个标量。组名里一旦出现空格、换行,或生成器把片段拆开,`direct-nameserver` 会变成直连拨号。读回生成文件,确认片段仍在且 `#` 前没有空白;丢失时按 [DNS 工作流](dns-workflow.md) 把 `direct-nameserver` 留空,不手改正在使用的生成文件。内核日志还要显示业务查询走保护组。模式、TCP 53 劫持和 `strict-route` 不属于这四个输入框,也不能用它们声称同网段路由器 DNS 已被接管。
|
|
24
|
+
|
|
25
|
+
## 生效与回滚
|
|
26
|
+
|
|
27
|
+
生成的 clash-verge.yaml 只读,不直接编辑;生成文件正确仍不等于活动内核已加载。刷新后在 GUI/已有 controller 查模式、规则顺序、TUN 和单次目标连接链。受影响的旧连接只在用户同意时关闭/重试;不清空所有会话。
|
|
28
|
+
|
|
29
|
+
TUN 接管必须结合路由、真实请求与异常断开测试。未验证接管时保持原代理路径;不声称关闭系统代理是防泄漏措施。任何字段被客户端丢弃或配置回滚都标记失败/未验证并停止。
|
|
30
|
+
|
|
31
|
+
回滚前检查本轮后是否有用户修改,冲突时停止覆盖。恢复原字段、原文件权限和原先不存在状态,重新加载并验证;不能靠写回文件就宣称网络已恢复。
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
## 本轮 DNS 计划的接入
|
|
35
|
+
|
|
36
|
+
按 [DNS 工作流](dns-workflow.md) 生成候选,只在本版本实际支持的规则/覆写/DNS 管理层应用。`candidate_fragment` 不是订阅全文;`rules_extension` 与内核 `dns`/`tun` 是不同产物,不放错层。现有 DNS 策略 map 要经批准替换;递归 Merge 的空对象可能保留旧策略,不能只看导入成功。
|
|
37
|
+
|
|
38
|
+
先在私有目录保存原状态,确认 schema 和各覆写层的执行顺序,使用隔离完整候选检查。读回最终生成配置后再跑 audit,尤其检查 nameserver-policy、proxy-server-nameserver-policy、fallback、direct-nameserver 和 URL 的代理组后缀没有被 GUI 删除或还原。未加引号本身不删除片段;`#` 前出现空白才会把组名变成注释。未知格式仅交付 GUI 操作计划,不写 SQLite 或臆造字段。
|
|
39
|
+
|
|
40
|
+
不因为启用 TUN 就关闭旧系统代理;不得替用户改节点密码、subscription URL、DNS 监听端口或系统区域。原生系统 DNS/IPv6 与浏览器更改读对应参考并分阶段实施,失败按 [事务与验收](acceptance.md) 停止/回滚。DNS 测试通过不能替代真实 Claude Code 连接链和服务响应。
|