From 0e1b51cb3be799ccc40e2771f88c56d123214548 Mon Sep 17 00:00:00 2001 From: yktsnet Date: Tue, 29 Sep 2026 22:55:57 +0900 Subject: [PATCH] =?UTF-8?q?docs:=20README=20=E3=81=AE=20H2=20=E3=82=92?= =?UTF-8?q?=E7=9F=AD=E3=81=84=E5=90=8D=E8=A9=9E=E3=81=AB=E6=8F=83=E3=81=88?= =?UTF-8?q?=E3=82=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.en.md | 8 ++++---- README.md | 10 +++++----- context/structure.md | 2 +- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/README.en.md b/README.en.md index b2d529a..0500da7 100644 --- a/README.en.md +++ b/README.en.md @@ -9,7 +9,7 @@ The parts that carry over to team repositories are packaged separately in [sdlc- --- -## Verification over Generation +## Why Now that AI writes the code, the time goes not into writing but into confirming that what was written can be trusted. Agents are confidently and quietly wrong, and left alone they carry destructive operations and secret leaks straight into production. A promise that people will be careful eventually becomes an empty formality. @@ -17,7 +17,7 @@ So removing environment differences, blocking destructive commands, and isolatin --- -## Rules Live in the Environment +## Design Rules are sorted by where they live. Rules that apply every time go in CLAUDE.md, procedures and criteria whose trigger can be stated as "when doing X" go in skills, and anything that must not be crossed goes in the `settings.json` deny list and hooks. All of it is then distributed through Nix, so the same rules apply in any repository on any machine. @@ -95,7 +95,7 @@ If the mapping existed on only one machine, writing on any other machine would m --- -## What Ships to sdlc-kit +## sdlc-kit Of the practices running here, the ones that carry over to team repositories are packaged in [sdlc-kit](https://github.com/yktsnet/sdlc-kit). Only practices that meet at least one of three conditions go in: they keep a human decision from being skipped, they have to survive across sessions, or they have to come out the same when the person changes. That covers the task flows, PLAN.md / JUDGE.md for the launch phase, the guarantee ledger after release, and the guards that protect main. The idea of running development on two driving documents is in sdlc-kit's [docs/lifecycle.md](https://github.com/yktsnet/sdlc-kit/blob/main/docs/lifecycle.md). @@ -103,7 +103,7 @@ Unifying tools through Nix, distributing `~/.claude`, decrypting the mapping, an --- -## What Is Not Here +## Scope Only the layers involved in developing with agents (Claude Code, memory, secrets, review, and tmux session management) are extracted from the working dotfiles. Editor and desktop settings and server configurations are not included. This is an extract, not a mirror, so some things in the working environment are absent here. The criteria for what gets published are in [.claude/skills/README.md](.claude/skills/README.md). diff --git a/README.md b/README.md index 72e10fa..9e2b300 100644 --- a/README.md +++ b/README.md @@ -9,7 +9,7 @@ --- -## Verification over Generation +## Why AI がコードを書くようになって、時間がかかるのは書くことではなく、書かれたものを信じられるか確かめることに変わった。エージェントは自信を持ったまま静かに間違え、放っておけば破壊的な操作や機密の漏洩をそのまま本番へ通す。人が気をつけるという約束は、いずれ形骸化する。 @@ -17,7 +17,7 @@ AI がコードを書くようになって、時間がかかるのは書くこ --- -## Rules Live in the Environment +## Design 規則は置き場で分けている。毎回守らせる規則は CLAUDE.md、「〜するとき」と条件を言える手順と基準は skill、外れてはいけないものは `settings.json` の deny とフックに置く。そのうえで、どのリポジトリ、どの端末で開いても同じものが効くよう、全部を Nix で配る。 @@ -95,7 +95,7 @@ Issue・PR・コミットの地の文には、IP・ポート・実ホスト名 --- -## What Ships to sdlc-kit +## sdlc-kit ここで回している型のうち、チームのリポジトリへ持ち込めるものを [sdlc-kit](https://github.com/yktsnet/sdlc-kit) に切り出している。持ち込むのは、人の判断を省かせない、セッションを超えて残す、担当者が替わっても揃う、のどれかに当たるものだけで、作業フロー、立ち上げ期の PLAN.md / JUDGE.md、リリース後の保証台帳、main を守るガードがこれにあたる。開発を2つの駆動文書で回す考え方は sdlc-kit の [docs/lifecycle.md](https://github.com/yktsnet/sdlc-kit/blob/main/docs/lifecycle.md) にある。 @@ -103,7 +103,7 @@ Nix による道具の統一、`~/.claude` の配布、対応表の復号、永 --- -## What Is Not Here +## Scope 稼働中の dotfiles から、エージェントとの開発に関わる層(Claude Code・メモリ・機密・レビュー・tmux のセッション管理)だけを抜き出している。エディタやデスクトップの設定、サーバー類の構成は含めていない。抜き出しであって写しではないので、稼働側にあってここに無いものがある。何を公開するかの基準は [.claude/skills/README.md](.claude/skills/README.md) に置いた。 @@ -118,6 +118,6 @@ clone して各自の端末へ適用することは想定しておらず、動 | `flake.nix`・`devices/` | 開発機の NixOS / nix-darwin 構成。共通部分は `devices/common/` | 全端末で道具を揃える | | `home-manager/modules/` | Claude Code の配布・メモリ・機密・tmux・crit。`zsh/` に Issue 駆動の関数 | 規則を1か所から全セッションへ配る・決める役と作る役を分ける | | `.claude/settings.json`・`.claude/hooks/` | deny とフック | 禁止は頼まず仕組みに置く | -| `.claude/skills/` | 手順と基準。一覧は [.claude/skills/README.md](.claude/skills/README.md) | Rules Live in the Environment 全体 | +| `.claude/skills/` | 手順と基準。一覧は [.claude/skills/README.md](.claude/skills/README.md) | Design 全体 | | `secrets-agents/` | 対応表の復号先(`example.md` はサンプル) | 機密を地の文に出さない | | `issues/` | このリポジトリ自身の Issue と PR の控え | 決める役と作る役を分ける | diff --git a/context/structure.md b/context/structure.md index 45c4a81..8bd0326 100644 --- a/context/structure.md +++ b/context/structure.md @@ -34,7 +34,7 @@ dotfiles-public/ - **ユーザ環境層**: `home-manager/`。エージェント関連(Claude Code・メモリ・機密・tmux のセッション管理等)を宣言的に管理。 - **ワークフロー層**: `home-manager/modules/zsh/functions/`。`issue` / `issue-abort` / `issue-finish` 等のマクロ。 - **ハーネス層**: `.claude/`。`settings.json` の deny(前方一致で足りるもの)と `hooks/` の PreToolUse(コマンド構造・編集先の判定が要るもの)で遮断を二段に分ける。`skills/` が正本で、`home-manager/modules/claude.nix` が `~/.claude/` へ配置する。 -- **基準と道具**: 判断の基準と、それを実行するスクリプトは、使う skill が持つ(`sops-secrets/scripts/inject.py`、`guarantee-audit/reference/guarantees-index/` 等)。規則の置き場の分け方は README の Rules Live in the Environment 節。公開の基準は `.claude/skills/README.md`。 +- **基準と道具**: 判断の基準と、それを実行するスクリプトは、使う skill が持つ(`sops-secrets/scripts/inject.py`、`guarantee-audit/reference/guarantees-index/` 等)。規則の置き場の分け方は README の Design 節。公開の基準は `.claude/skills/README.md`。 - **機密層**: `secrets/` が暗号文、`secrets-agents/` が各機で復号したマスク辞書。どちらも Agent からは読み書きしない。 ## issues/