steel-developer
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseSteel Developer
Steel Developer
Skill Boundary
Skill边界
- Use this skill when the user wants code or implementation guidance they will run later.
- Do not use this skill when the user wants the agent to browse, extract, screenshot, create a PDF, or fill a form now; use .
steel-browser - Use when the main task is diagnosing a failed session.
steel-session-debugging - Use when the main task is bot detection, proxy, CAPTCHA, identity, pacing, or login reliability mitigation.
steel-reliability
- 当用户需要后续自行运行的代码或实现指导时,使用此Skill。
- 当用户需要Agent立即执行浏览、提取内容、截图、生成PDF或填写表单操作时,请勿使用此Skill;此类场景请使用。
steel-browser - 当主要任务是诊断失败会话时,使用。
steel-session-debugging - 当主要任务是机器人检测、代理、CAPTCHA、身份验证、节奏控制或登录可靠性优化时,使用。
steel-reliability
Route By Need
按需求路由
Load the relevant reference before writing code:
- CLI setup and local verification:
references/cli-setup.md - TypeScript, JavaScript, Node.js, Playwright, Puppeteer, Stagehand:
references/typescript.md - Python, Playwright Python, Browser Use:
references/python.md - First-party APIs, exact docs/API/SDK lookup, browser tools, files, extensions, auth context, embeds, traces, mobile mode, multi-region:
references/apis.md - Framework choice, Stagehand, Browser Use, typed agent frameworks, coding-agent integrations:
references/ecosystem.md - Stale SDK/API patterns to avoid:
references/anti-patterns.md - Computer-use loops:
references/computer-use.md - Live and past session embeds:
references/live-embed.md - Reliability boundary and handoff:
references/reliability-handoff.md
编写代码前,请加载相关参考文档:
- CLI设置与本地验证:
references/cli-setup.md - TypeScript、JavaScript、Node.js、Playwright、Puppeteer、Stagehand:
references/typescript.md - Python、Playwright Python、Browser Use:
references/python.md - 第一方API、精准文档/API/SDK查询、浏览器工具、文件、扩展、认证上下文、嵌入、追踪、移动模式、多区域:
references/apis.md - 框架选择、Stagehand、Browser Use、类型化Agent框架、编码Agent集成:
references/ecosystem.md - 需要避免的过时SDK/API模式:
references/anti-patterns.md - 计算机使用循环:
references/computer-use.md - 实时与历史会话嵌入:
references/live-embed.md - 可靠性边界与交接:
references/reliability-handoff.md
Non-Negotiables
必须遵守的规则
- Auth env var is .
STEEL_API_KEY - Node examples import from
Steel; SDK source issteel-sdk.steel-dev/steel-node - Node SDK constructor uses .
steelAPIKey - Python SDK constructor uses .
steel_api_key - Always release sessions in cleanup.
- Construct the CDP URL explicitly as .
wss://connect.steel.dev?apiKey=...&sessionId=... - Reuse the default browser context after connecting; do not create a new context unless the user explicitly needs isolation.
- Keep target-site credentials out of prompts, code comments, page scripts, and logs.
- For exact API fields or SDK method signatures, inspect the API reference, SDK docs, local installed types, or Steel docs via .
curl -sSfL - Never use stale patterns listed in .
references/anti-patterns.md
- 认证环境变量为。
STEEL_API_KEY - Node示例从导入
steel-sdk;SDK源码位于Steel。steel-dev/steel-node - Node SDK构造函数使用参数。
steelAPIKey - Python SDK构造函数使用参数。
steel_api_key - 务必在清理阶段释放会话。
- 显式构造CDP URL:。
wss://connect.steel.dev?apiKey=...&sessionId=... - 连接后复用默认浏览器上下文;除非用户明确需要隔离环境,否则不要创建新上下文。
- 请勿在提示信息、代码注释、页面脚本和日志中包含目标站点的凭证信息。
- 如需获取精准的API字段或SDK方法签名,请通过查看API参考文档、SDK文档、本地安装的类型定义或Steel文档。
curl -sSfL - 切勿使用中列出的过时模式。
references/anti-patterns.md
Minimal Session Shape
最小会话示例
TypeScript:
ts
const steelAPIKey = process.env.STEEL_API_KEY;
if (!steelAPIKey) throw new Error("STEEL_API_KEY is required");
const client = new Steel({ steelAPIKey });
const session = await client.sessions.create();
const cdpUrl = `wss://connect.steel.dev?apiKey=${steelAPIKey}&sessionId=${session.id}`;
const browser = await chromium.connectOverCDP(cdpUrl);
const context = browser.contexts()[0];
const page = context.pages()[0] ?? (await context.newPage());
try {
await page.goto("https://example.com");
} finally {
await browser.close();
await client.sessions.release(session.id);
}Python:
python
steel_api_key = os.environ["STEEL_API_KEY"]
client = Steel(steel_api_key=steel_api_key)
session = client.sessions.create()
cdp_url = f"wss://connect.steel.dev?apiKey={steel_api_key}&sessionId={session.id}"
browser = await playwright.chromium.connect_over_cdp(cdp_url)
context = browser.contexts[0]
page = context.pages[0] if context.pages else await context.new_page()
try:
await page.goto("https://example.com")
finally:
await browser.close()
await playwright.stop()
client.sessions.release(session.id)TypeScript:
ts
const steelAPIKey = process.env.STEEL_API_KEY;
if (!steelAPIKey) throw new Error("STEEL_API_KEY is required");
const client = new Steel({ steelAPIKey });
const session = await client.sessions.create();
const cdpUrl = `wss://connect.steel.dev?apiKey=${steelAPIKey}&sessionId=${session.id}`;
const browser = await chromium.connectOverCDP(cdpUrl);
const context = browser.contexts()[0];
const page = context.pages()[0] ?? (await context.newPage());
try {
await page.goto("https://example.com");
} finally {
await browser.close();
await client.sessions.release(session.id);
}Python:
python
steel_api_key = os.environ["STEEL_API_KEY"]
client = Steel(steel_api_key=steel_api_key)
session = client.sessions.create()
cdp_url = f"wss://connect.steel.dev?apiKey={steel_api_key}&sessionId={session.id}"
browser = await playwright.chromium.connect_over_cdp(cdp_url)
context = browser.contexts[0]
page = context.pages[0] if context.pages else await context.new_page()
try:
await page.goto("https://example.com")
finally:
await browser.close()
await playwright.stop()
client.sessions.release(session.id)Setup Verification
设置验证
bash
steel --version
steel login
steel doctor --preflight
steel skills doctorbash
steel --version
steel login
steel doctor --preflight
steel skills doctorSource-Of-Truth Links
权威链接
- API reference: https://steel.apidocumentation.com/api-reference
- Node SDK/types: https://github.com/steel-dev/steel-node
- Python SDK/types: https://github.com/steel-dev/steel-python
- Docs index:
curl -sSfL https://docs.steel.dev/llms.txt - Full docs bundle:
curl -sSfL https://docs.steel.dev/llms-full.txt - Single docs page:
curl -sSfL https://docs.steel.dev/llms.mdx/<page-path>
- API参考文档:https://steel.apidocumentation.com/api-reference
- Node SDK/类型定义:https://github.com/steel-dev/steel-node
- Python SDK/类型定义:https://github.com/steel-dev/steel-python
- 文档索引:
curl -sSfL https://docs.steel.dev/llms.txt - 完整文档包:
curl -sSfL https://docs.steel.dev/llms-full.txt - 单个文档页面:
curl -sSfL https://docs.steel.dev/llms.mdx/<page-path>