Telemetry sanitized skill invocation
Skill ychampion/cskill-agents/agents/claude-code/skills/telemetry-sanitized-skill-invocation
Agent skills for coding CLIs, multi-agent runtimes, context engines, MCP extensions, and terminal tooling. Instead of using claude code's source code, give your agent skills to create your own!
npx -y skills add ychampion/cskill-agents --skill telemetry-sanitized-skill-invocationAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
What its author says it does
Copied from the file, not written here
Record SkillTool usage with sanitized telemetry fields so built-in, bundled, and custom skills are distinguished while avoiding PII leakage.
SKILL.md
2.7 KB, as published. Nobody here has run it
SKILL: Telemetry Sanitized Skill Invocation
Domain: tool-orchestration
Trigger: Use when SkillTool emits tengu_skill_tool_invocation so built-in commands, remote MCP skills, and forked executions are logged without exposing command strings in open analytics tables.
Source Pattern: Distilled from reviewed tool-loop and result-shaping patterns.
Core Method
Before executing any skill, compute whether the command is built-in, bundled, official marketplace, or custom and pass the sanitized value as command_name while storing the actual skill name under _PROTO_skill_name to satisfy both privacy and auditability. Add contextual metadata such as execution_context (inline, forked, remote), query_depth, parent_agent_id, and plugin fields when applicable, and wrap remote canonical invocations or discovered skills with additional flags so downstream dashboards know the skill source without revealing user-generated text. Emit separate telemetry for inline/forked/remote flows so metrics can split by execution path while normalizing the skill name for aggregated reporting.
Key Rules
- Derive
sanitizedCommandNameascommandNamefor built-in/bundled/official skills and fall back to'custom'for user-authored commands; log the actual name only in_PROTO_skill_nameto keep BigQuery columns safe. - Always include
execution_context('inline','forked','remote') plusinvocation_trigger(nested vs proactive) andquery_depthso telemetry consumers understand the runtime scenario. - When a plugin skill is involved, add both
_PROTO_plugin_nameand the sanitizedplugin_name/plugin_repositoryfields along with marketplace metadata to enable plugin-level analytics without leaking repository URLs. - For remote MCP skills, emit
is_remote,was_discovered, and cached load info (latency, cache hit) so telemetry can diagnose discovery performance without exposing the raw prompt body.
Example Application
Use this skill to log any slash command invocation, ensuring that a cloned forked review or remote_skill call still records an execution_context flag plus proper naming sanitization for consumption by privacy-sensitive dashboards.
Anti-Patterns (What NOT to do)
- Do not log user-entered command text directly into public telemetry columns; that breaks PII rules and makes analytics unusable.
- Do not merge inline/forked/remote flows in a single metric stream without flags, because it becomes impossible to trace delays or diagnostics per execution context.