← All skills
add-iron-proxy
57 / 100 · Review before installing
Check before installing. Some of what it can do is expected: a coding skill usually runs build and test commands.
By nanocoai/nanoclaw (GitHub) · coding · 31,103 stars · scanned at commit df750f6
Install or refresh Iron Proxy and its official Iron Control web console for NanoClaw. Use when selecting the Iron gateway, adding its management UI, configuring credentials and grants, or restoring the proxy, approval bridge, and agent guidance.
Works with any agent that supports SKILL.md skills.
What this skill can do
Runs commands on your computer
The author does not mention this. Expected for a coding skill.
Found in 43 places.
Show 17 more
- .claude/skills/add-iron-proxy/SKILL.md, line 159
pnpm exec tsx setup/index.ts --step provider-auth opencode - .claude/skills/add-iron-proxy/payload/container/skills/iron-proxy-gateway/SKILL.md, line 23
ncl groups connect --host <API hostname> - .claude/skills/add-iron-proxy/payload/src/gateway-providers/iron-proxy.test.ts, line 12
vi.mock('node:child_process', () => ({ - .claude/skills/add-iron-proxy/payload/src/gateway-providers/iron-proxy.ts, line 2
import { execFile } from 'node:child_process'; - .claude/skills/add-iron-proxy/scripts/auth.ts, line 2
import { spawnSync } from 'node:child_process'; - .claude/skills/add-iron-proxy/scripts/auth.ts, line 115
const result = spawnSync('bash', [script, output], { stdio: 'inherit' }); - .claude/skills/add-iron-proxy/scripts/detect.ts, line 1
import { execFileSync } from 'node:child_process'; - .claude/skills/add-iron-proxy/scripts/detect.ts, line 25
execFileSync(CONTAINER_RUNTIME_BIN, ['inspect', '-f', '{{.State.Running}}', name], { - .claude/skills/add-iron-proxy/scripts/install-command.test.ts, line 79
const [command, args] = node(`require('node:child_process').spawn(process.execPath, - .claude/skills/add-iron-proxy/scripts/install-command.ts, line 1
import { spawn } from 'node:child_process'; - .claude/skills/add-iron-proxy/scripts/setup.ts, line 2
import { execFileSync } from 'node:child_process'; - .claude/skills/add-iron-proxy/scripts/setup.ts, line 333
execFileSync( - .claude/skills/add-iron-proxy/scripts/setup.ts, line 351
execFileSync( - setup/gateways/selection.ts, line 1
import { execFileSync } from 'node:child_process'; - setup/gateways/selection.ts, line 20
execFileSync('pnpm', ['--silent', 'exec', 'tsx', script], { - setup/lib/claude-assist.ts, line 23
import { execSync, spawn, spawnSync } from 'child_process'; - setup/lib/claude-assist.ts, line 145
execSync('command -v claude', { stdio: 'ignore' });
and 23 more places
Can call paid AI services billed to you
The author does not mention this.
Found in 18 places.
Show 15 more
- .claude/skills/add-iron-proxy/payload/src/gateway-providers/iron-proxy-approval.test.ts, line 248
url: 'https://api.anthropic.com/v1/messages', - .claude/skills/add-iron-proxy/payload/src/gateway-providers/iron-proxy-approval.test.ts, line 260
request: { method: 'CONNECT', url: '//api.anthropic.com:443', host: 'api.anthropic.com:443' }, - .claude/skills/add-iron-proxy/payload/src/gateway-providers/iron-proxy-credential-scope.test.ts, line 413
'transforms:\n - name: secrets\n config:\n secrets:\n - source: { type: file, path: /run/secrets/upstream }\n replace: { proxy_value: g - .claude/skills/add-iron-proxy/payload/src/gateway-providers/iron-proxy-credential-scope.test.ts, line 453
expect(covers(rules, { host: 'api.anthropic.com', method: 'GET' })).toBe(true); - .claude/skills/add-iron-proxy/payload/src/gateway-providers/iron-proxy.test.ts, line 52
modelHost: 'api.anthropic.com', - .claude/skills/add-iron-proxy/payload/src/gateway-providers/iron-proxy.test.ts, line 88
expect(claims['https://api.openai.com/auth'].chatgpt_account_id).toBe('ws-1234_abcd'); - .claude/skills/add-iron-proxy/payload/src/gateway-providers/iron-proxy.test.ts, line 181
expect(await scope({ host: 'api.anthropic.com', method: 'GET' })).toBe('credential'); - .claude/skills/add-iron-proxy/payload/src/gateway-providers/iron-proxy.test.ts, line 186
host: 'api.anthropic.com', - .claude/skills/add-iron-proxy/payload/src/gateway-providers/iron-proxy.ts, line 314
'https://api.openai.com/auth': { chatgpt_account_id: account, chatgpt_plan_type: 'plus' }, - .claude/skills/add-iron-proxy/scripts/credential-isolation.test.ts, line 30
host: 'api.openai.com', - .claude/skills/add-iron-proxy/scripts/credential-isolation.test.ts, line 40
const rule = [{ host: 'api.openai.com', http_methods: ['*'] }]; - .claude/skills/add-iron-proxy/scripts/credential-isolation.test.ts, line 43
await expect(f.check()).rejects.toThrow('conflicts on api.openai.com'); - .claude/skills/add-iron-proxy/scripts/credential-store.test.ts, line 7
api: 'https://api.openai.com', - .claude/skills/add-iron-proxy/scripts/credential-store.test.ts, line 55
rules: [{ host: 'api.openai.com', http_methods: ['*'] }], - src/provider-contracts/claude.ts, line 59
modelEndpoints: { api: 'https://api.anthropic.com' },
Reads your saved credentials, such as SSH keys or .env files
This is disclosed by the author in the skill's SKILL.md or README.
Found in 6 places.
Show 3 more
- .claude/skills/add-iron-proxy/scripts/auth-resume.test.ts, line 159
expect(fs.readFileSync(path.join(control.root, '.env'), 'utf8')).toContain( - .claude/skills/add-iron-proxy/scripts/control.ts, line 39
const env = fs.existsSync(path.join(root, '.env')) ? fs.readFileSync(path.join(root, '.env'), 'utf8') : ''; - .claude/skills/add-iron-proxy/scripts/detect.ts, line 9
.readFileSync(path.join(projectRoot, '.env'), 'utf8')
Sends data to these websites: claude.ai, example.com
This is disclosed by the author in the skill's SKILL.md or README.
Found in 5 places.
Show 2 more
Downloads and installs other software
The author does not mention this.
Found in 2 places.
Safer alternatives
Low-risk skills in the same category (coding) that look related. Check that one does what you need.
Install
Paste this into your terminal. It downloads exactly the version we scanned, not whatever is newest.
if [ -e ~/.agents/skills/'add-iron-proxy' ] || [ -L ~/.agents/skills/'add-iron-proxy' ]; then echo 'A skill folder named add-iron-proxy already exists — not replacing it' >&2; false; else d=$(mktemp -d) && git clone --quiet --filter=blob:none --no-checkout 'https://github.com/nanocoai/nanoclaw' "$d" && git -C "$d" checkout --quiet 'df750f67ab4dffbd28a30d30f06560e82a6f450b' -- '.claude/skills/add-iron-proxy' && mkdir -p ~/.agents/skills && cp -R "$d"/'.claude/skills/add-iron-proxy' ~/.agents/skills/'add-iron-proxy' && rm -rf "$d"; fi
Codex reads ~/.agents/skills directly. For Claude Code, Cursor, Copilot, Gemini CLI, Antigravity or OpenCode, also link it. For Claude Code: ln -s ~/.agents/skills/'add-iron-proxy' ~/.claude/skills/'add-iron-proxy' (other agents: ~/.cursor/skills, ~/.copilot/skills, ~/.gemini/skills, ~/.gemini/config/skills, ~/.config/opencode/skills). Or install through the finder skill, which does both.
Badge for your README
The badge for nanocoai/nanoclaw shows the score of its lowest-scoring skill.

[](https://zalavijaysinh.github.io/skilltrust/repos/nanocoai/nanoclaw/)
Score history
| Date | Version | Score |
|---|
| 2026-11-11 | df750f6 | 57 |
| 2026-11-08 | 5356b6c | 57 |
| 2026-11-07 | 5356b6c | 47 |