<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Bash on Feng-Chi's Notes</title><link>https://holmeslin.github.io/tags/bash/</link><description>Recent content in Bash on Feng-Chi's Notes</description><generator>Hugo -- gohugo.io</generator><language>zh-tw</language><lastBuildDate>Mon, 02 Nov 2026 11:00:00 +0800</lastBuildDate><atom:link href="https://holmeslin.github.io/tags/bash/index.xml" rel="self" type="application/rss+xml"/><item><title>用 Claude Code hook 擋危險指令</title><link>https://holmeslin.github.io/posts/claude-code-pretooluse-hook-guardrails/</link><pubDate>Mon, 02 Nov 2026 11:00:00 +0800</pubDate><guid>https://holmeslin.github.io/posts/claude-code-pretooluse-hook-guardrails/</guid><description>&lt;p&gt;在 CLAUDE.md 寫「不要 force push」，模型大多會遵守，但「大多」不夠。Claude Code 的 PreToolUse hook 會在每次工具呼叫之前執行你的腳本，由腳本決定放行或擋下，模型沒辦法用說理的方式繞過去。&lt;/p&gt;
&lt;p&gt;寫 hook 時最容易忽略的問題是：&lt;strong&gt;hook 自己出錯的時候該怎麼辦？&lt;/strong&gt; 擋危險指令的護欄，出錯時應該擋下（fail-closed）；只是提醒的 hook，出錯時應該安靜放行（fail-open）。這篇用兩支 bash 腳本說明這兩種設計。&lt;/p&gt;</description></item></channel></rss>