逐日AI

面试题库

共 328 题,当前筛选 1 题。

7 天 Agent Skills:把经验做成可复用能力

D4 带脚本的 skill:可执行附件、依赖与沙箱、跨平台,以及文档处理类 skill 的拆解

  • 给 Agent 用的命令行脚本,接口设计上和给人用的有什么不同?How does designing a command-line script for an agent differ from designing one for a human?
    国内高频海外高频进阶#agent-skills#scripts#cli-design

    分析过程 · 先想清楚再作答

    1. 题眼是「不同」。能列出五条通用 CLI 最佳实践的人很多,能说清哪几条是因为「使用者是模型」才成立的人少。
    2. 先给根本差异:人会读文档、会试错、会凭经验猜;Agent 只能读你打印的那几行字然后决定下一步。**它的全部信息就是你的输出**。
    3. 由此推出五条。绝对不能交互,这是硬要求不是最佳实践,Agent 在非交互终端里回答不了提示,会一直挂到超时。
    4. 帮助信息就是接口文档,但要短——这段输出原样进上下文,跟别的东西抢位置,这是给人用的 CLI 完全不必考虑的约束。
    5. 错误信息决定它下一次会不会做对:写清哪一项错了、期望什么、实际是什么、可选值有哪些。**错误信息本质上是给模型的提示词**,这一句是拿分点。
    6. 剩下两条:输出结构化并把数据与诊断分流到标准输出与标准错误;输出体量要可控,因为很多 Agent 环境会静默截断超长输出。再补幂等、有意义的退出码、危险操作给预演开关。
    7. 可预期的追问是「怎么验证接口设计得好」。答案是把帮助输出和一条错误信息单独发给一个没看过这个 skill 的人,他能照着敲对改对,模型大概率也能。

    How to reason about it · think before answering

    1. The hinge is the difference. Many can list CLI best practices; few can say which ones exist specifically because the caller is a model.
    2. State the root difference: humans read docs, experiment and guess from experience; an agent has only the lines you printed before deciding the next move.
    3. From that: never prompt interactively. This is a hard requirement, not a nicety, because agents run in non-interactive shells and will hang until timeout.
    4. Help output is the interface documentation, but it must be short, since it enters the context window and competes with everything else. A human CLI never faces this constraint.
    5. Error messages decide the next attempt: say what failed, what was expected, what was received, and which values are allowed. Error messages are effectively prompts for the model.
    6. Then: structured output with data on stdout and diagnostics on stderr, and bounded output size because many harnesses truncate silently. Add idempotency, meaningful exit codes, and a dry-run flag for destructive work.
    7. Expected follow-up: how do you validate the design? Hand the help text and one error message to someone who has never seen the skill; if they can act on it, the model probably can too.

    答题要点

    • 根本差异:Agent 的全部信息就是你打印的输出,它不会读文档也不会试错。
    • 绝不能交互,否则在非交互终端里会挂到超时。
    • 帮助信息就是接口文档,但必须短,因为它原样占用上下文。
    • 错误信息要写清哪项错、期望什么、实际什么、可选值有哪些,它本质是给模型的提示词。
    • 结构化输出并分流标准输出与标准错误,输出体量要可控,危险操作给预演开关。

    Key points

    • The agent's only information is what you printed; it does not read docs or experiment.
    • Never prompt interactively; a non-interactive shell will hang until timeout.
    • Help text is the interface documentation and must be short because it consumes context.
    • Error messages must state the field, the expectation, the actual value and the allowed set; they are prompts for the model.
    • Emit structured data on stdout and diagnostics on stderr, bound output size, and offer a dry-run for destructive operations.