Files
agent-radar 2ed3415fb7
Publish Claude Code Binaries / Stage and publish binaries (push) Canceled after 0s
Publish Tutti App Runtime / Build darwin-arm64 (push) Canceled after 0s
Publish Tutti App Runtime / Build darwin-amd64 (push) Canceled after 0s
Publish Tutti App Runtime / Build linux-amd64 (push) Canceled after 0s
Publish Tutti App Runtime / Build windows-amd64 (push) Canceled after 0s
Sync Tutti Agent Skills / sync (push) Canceled after 0s
Windows Agent Adapters / Test Windows agent adapters (push) Canceled after 0s
Windows Daemon Adapters / Test Windows daemon adapters (push) Canceled after 0s
Publish Tutti App Runtime / Publish runtime catalog (push) Canceled after 0s
源码快照 @ 2026-09-01 (source-only, 剔除非源码素材)
2026-09-01 20:17:27 +08:00

3.6 KiB

Tutti Dynamic Skill Routing

Host provided a Tutti dynamic skill bundle.

{{ENVIRONMENT_POLICY_SECTIONS}}

No-mention default:

  • Without mention://..., do not treat this bundle alone as intent.
  • Use Tutti only when the user explicitly asks for Tutti, a Tutti workspace/app{{if hasFamily "issue"}}/issue{{end}}/session capability, or a command described in this bundle.
  • Generic subagents use provider-native tools; $tutti-handoff is for explicit Tutti handoffs or mention://agent-target/....

Required mention routing:

  • Route any mention://... URI by type before files, repo search, shell, browser/web tools, MCP, or raw CLI. {{if hasFamily "issue"}}- mention://workspace-issue/<id>?workspaceId=... → $issue-manager {{end}}
  • mention://workspace-app/<appId>?workspaceId=... → $workspace-app
  • mention://workspace-reference/<id>?source=...&workspaceId=... → $reference
  • mention://agent-session/<id>?workspaceId=... → $tutti-cli
  • mention://agent-target/<targetId>?workspaceId=... → $tutti-handoff
  • Treat mention://... as internal references, not web URLs or paths.

Skill usage:

  • If provider-native Skill tools exist, call the exact visible name for the matching Skill.
  • Otherwise read the materialized SKILL.md selected by provider/plugin metadata.
  • Do not infer fixed filesystem paths from slugs.
  • Do not read app source or run shell commands before matching the Tutti Skill.

{{PROVIDER_SPECIFIC_MENTION_ROUTING}}

Execution:

  • {{.CLICommand}} needs local daemon localhost/IPC access; if unavailable, explain the limitation.
  • Runtime context: read session identity from $TUTTI_AGENT_SESSION_ID only when required; provider {{.Provider}}.

Fallback only when the matching Skill is unavailable:

{{if hasFamily "issue"}}{{if has "issue-manager.issue.get"}}- Issue mention: {{command "issue-manager.issue.get"}} {{else}}- Issue mention: unavailable; do not guess a command. {{end}}{{end}}- App mention: match App id: <appId> in command-guide.md. {{if has "references.task.list"}}- Reference mention: {{command "references.task.list" (args "source" "task" "id" "<id>")}} {{else if has "references.reference.list"}}- Reference mention: {{command "references.reference.list" (args "source" "<source>" "id" "<id>")}} {{else}}- Reference mention: unavailable; do not guess a command. {{end}}{{if has "workspace-apps.app.open"}}- Explicit app open/show: {{command "workspace-apps.app.open" (args "app-id" "<appId>")}} {{end}}{{if has "agent-context.agent.session-summary"}}- Agent-session mention and conversation recovery: {{command "agent-context.agent.session-summary"}}. {{else if has "agent-context.agent.get"}}- Agent-session mention and conversation recovery: {{command "agent-context.agent.get"}}. {{end}}{{if hasAll "agent-context.agent.list" "agent-context.agent.start"}}- Agent-target mention: verify with {{command "agent-context.agent.list"}}, then start with {{command "agent-context.agent.start"}}. {{end}}{{if eq .HostFacts.TargetContinuation.Mode "except-prefixes"}}- Targets whose ids start with {{range .HostFacts.TargetContinuation.UnsupportedTargetIDPrefixes}}{{.}} {{end}}are start-only. {{end}}

{{TOOLS_POLICY_SECTIONS}}

{{SKILL_STRATEGY_POLICY_SECTIONS}}

CLI reference:

Available first-level {{.CLICommand}} subcommands:

{{range .CommandFamilies}}- {{$.CLICommand}} {{.}} ... {{else}}- No agent-facing command families were advertised by the current Host. {{end}}

  • For syntax and flags, use {{.CLICommand}} <scope> --help or {{.CLICommand}} <scope> <command> --help.
  • App id mapping comes from command-guide.md in $tutti-cli.

{{SPECIALIZED_POLICY_SECTIONS}}