scan-for-secrets 0.1 リリース
Simon Willison氏が、APIキーなどの機密情報が誤って公開されるリスクを軽減するためのPythonスキャンツール「scan-for-secrets 0.1」をリリースし、その開発プロセスとしてREADME駆動開発とClaude Codeを活用したことを紹介している。
キーポイント
新ツール「scan-for-secrets」のリリース
Simon Willison氏が、APIキーなどの機密情報が誤って公開されるリスクを軽減するためのPythonスキャンツール「scan-for-secrets 0.1」をリリースした。
ツールの機能と使い方
指定したディレクトリ内のファイルをスキャンし、機密情報(APIキーなど)の漏洩を検出する。秘密情報のリテラル値だけでなく、一般的なエンコーディング(バックスラッシュエスケープ、JSONエスケープなど)も検出可能。
設定ファイルによる保護対象の管理
常に保護したい機密情報のセットがある場合、~/.scan-for-secrets.conf.shファイルにそれらを出力するコマンドをリストすることで管理できる。
README駆動開発とAI支援開発プロセス
このツールは、README駆動開発(まずREADMEで仕様を詳細に記述)を行い、その内容をClaude Codeに与えて実際のツール構築(赤/緑TDDを用いて)を実行させるというプロセスで構築された。
影響分析・編集コメントを表示
影響分析
この記事は、AI開発における実践的なセキュリティ課題への対応ツールを紹介するとともに、AIを活用した現代的なソフトウェア開発プロセス(README駆動開発、エージェント的エンジニアリング)の具体例を示している。業界全体に変革をもたらすものではないが、開発者のワークフロー改善とAI支援開発の実践的な応用例として参考になる。
編集コメント
個人開発者の実用的な課題解決から生まれたツールであり、AI開発におけるセキュリティプラクティスの具体例として興味深い。同時に、AIを開発ツールとして活用する現代的なワークフロー(README駆動開発+AIコード生成)の実践例としても価値がある。
リリース: scan-for-secrets 0.1
私は、claude-code-transcripts ツールを使用して、ローカルの Claude Code セッションのトランスクリプトを公開することが好きですが、詳細なログファイルに API キーやその他のシークレットが意図せず公開されていないかという不安(パラノイア)を抱くことがよくあります。
この新しい Python スキャンツールは、その不安を和らげるために作成しました。シークレットを入力として渡し、特定のディレクトリ内でそれらがスキャンされるようにできます:
uvx scan-for-secrets $OPENAI_API_KEY -d logs-to-publish/
-d オプションを省略すると、デフォルトで現在のディレクトリが対象となります。
このツールは、シークレットの文字列そのものだけでなく、それらの一般的なエンコーディング(例:バックスラッシュや JSON エスケープ)もスキャンします。詳細は README を参照してください。
常に保護したいシークレットのセットがある場合、それらを出力するコマンドを ~/.scan-for-secrets.conf.sh ファイルにリストとして記述できます。私の設定ファイルは以下のようになります:
llm keys get openai
llm keys get anthropic
llm keys get gemini
llm keys get mistral
awk -F= '/aws_secret_access_key/{print $2}' ~/.aws/credentials | xargs
私はこのツールを、README駆動開発(README-driven-development)を用いて構築しました。具体的には、ツールの動作を正確に記述したREADMEを慎重に作成し、それをClaude Codeに投入して実際のツールの構築を依頼しました(もちろん、赤/緑テスト駆動開発(red/green TDD)を用いてです)。
原文を表示
Release: scan-for-secrets 0.1
I like publishing transcripts of local Claude Code sessions using my claude-code-transcripts tool but I'm often paranoid that one of my API keys or similar secrets might inadvertently be revealed in the detailed log files.
I built this new Python scanning tool to help reassure me. You can feed it secrets and have it scan for them in a specified directory:
uvx scan-for-secrets $OPENAI_API_KEY -d logs-to-publish/
If you leave off the -d it defaults to the current directory.
It doesn't just scan for the literal secrets - it also scans for common encodings of those secrets e.g. backslash or JSON escaping, as described in the README.
If you have a set of secrets you always want to protect you can list commands to echo them in a ~/.scan-for-secrets.conf.sh file. Mine looks like this:
llm keys get openai
llm keys get anthropic
llm keys get gemini
llm keys get mistral
awk -F= '/aws_secret_access_key/{print $2}' ~/.aws/credentials | xargs
I built this tool using README-driven-development: I carefully constructed the README describing exactly how the tool should work, then dumped it into Claude Code and told it to build the actual tool (using red/green TDD, naturally.)
関連記事
Vite 開発元 VoidZero が Cloudflare に参画
Vite や Vitest を開発する企業「VoidZero」がクラウドプロバイダー「Cloudflare」に合流し、同社全従業員も Cloudflare の一員となる。ただし、主要プロジェクトは引き続きオープンソースとして運営される方針を示した。
米軍が GPS を利用し、20 年間にわたり暗号化ネットワークの「ナンバーステーション」として機能させていた可能性を示す証拠
情報セキュリティ研究者のスティーブン・マーチャード氏によると、米軍は約 20 年にわたり、公衆用の GPS 衛星を利用して暗号化ネットワークのコードを放送し、各衛星を隠れた「ナンバーステーション」として活用してきた可能性が高い。
[AINews] 今日は何も大きな出来事はありませんでした
Anthropic が RSI の兆候を示し、OpenAI の ChatGPT が月間アクティブユーザー数で 10 億人を突破。SpaceX AI は IPO について説明しているが、最も重要なのは AIE WF のチケット確保とイベント参加である。