Extracts user customizations from a fork, generates a replayable migration guide, and upgrades to upstream by reapplying customizations on a clean base. Replaces merge-based upgrades with intent-based migration.
59
70%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Critical
Do not install without reviewing
Fix and improve this skill with Tessl
tessl review fix ./.claude/skills/migrate-nanoclaw/SKILL.mdSecurity
3 findings: 1 critical severity, 2 high severity. Installing this skill is not recommended: please review these findings carefully if you do intend to do so.
Detected high-risk code patterns in the skill content — including its prompts, tool definitions, and resources — such as data exfiltration, backdoors, remote code execution, credential theft, system compromise, supply chain attacks, and obfuscation techniques.
The skill contains an explicit telemetry/exfiltration flow (a hard-coded PostHog API key and curl POST of a generated diagnostics JSON) and also includes instructions that expose environment data (symlinking .env into a worktree) and re-fetch/execute code from external skill origins, which together present deliberate data-exfiltration and supply-chain/exposure risk.
The skill handles credentials insecurely by requiring the agent to include secret values verbatim in its generated output. This exposes credentials in the agent’s context and conversation history, creating a risk of data exfiltration.
The prompt explicitly tells sub-agents to read full file contents and "extract ... code, imports, API calls, and configurations verbatim" including "specific values", which would require the LLM to copy any embedded secrets (API keys, tokens, passwords) into its output—creating an exfiltration risk.
Detected sensitive credentials directly embedded within the skill content, such as API keys, access tokens, private keys, or service-specific secrets. Secrets should never be hardcoded in plain text within skill instructions.
I flagged the literal high-entropy API key found in diagnostics.md. The JSON includes "api_key": "phc_fx1Hhx9ucz8GuaJC8LVZWO8u03yXZZJJ6ObS4yplnaP" which appears to be a real, usable credential (random-looking, high entropy) and not a documentation placeholder or truncated/redacted value. Other values in the skill (env var names like DEEPL_API_KEY, example passwords, and URLs) are either placeholders, environment variable references, or simple examples and do not meet the secret definition, so they were ignored.
Low
Low-risk findings.
2 low severity findings. Worth noting, but not necessarily harmful.
The skill exposes the agent to untrusted, user-generated content from public third-party sources, creating a risk of indirect prompt injection. This includes browsing arbitrary URLs, reading social media posts or forum comments, and analyzing content from unknown websites.
The skill reads and ingests outsider-authored free text from the user’s own git checkout at runtime (e.g., `git diff`, `git log`, and “Read the full current file” for all changed files under the fork), which is then processed by the LLM to generate the migration guide and apply steps.
The skill fetches instructions or code from an external URL at runtime, and the fetched content directly controls the agent’s prompts or executes code. This dynamic dependency allows the external source to modify the agent’s behavior without any changes to the skill itself.
The skill explicitly fetches and checks out upstream at runtime (default https://github.com/nanocoai/nanoclaw.git) and then re-reads and follows the fetched SKILL.md, so remote repository content can directly alter agent instructions.
ad8837c
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.