Fix documentation inconsistencies and bump document versions
This commit is contained in:
@@ -14,6 +14,11 @@ Dokumentace/
|
||||
│ ├── CLAUDE.md # Claude Code session instructions
|
||||
│ ├── AGENTS.md # Language-agnostic rules for all AI assistants
|
||||
│ └── skills/ # Custom Claude Code skills
|
||||
│ ├── changelog/ # /changelog — update CHANGELOG.md
|
||||
│ ├── check/ # /check — run tests, investigate failures
|
||||
│ ├── commit/ # /commit — changelog + commit message proposal
|
||||
│ ├── documentation/ # /documentation — write docs/
|
||||
│ └── documentation_context/ # /documentation_context — compress docs/ into CONTEXT.md
|
||||
│
|
||||
├── Python/ # Python development guidelines
|
||||
│ ├── DESIGN_DOCUMENT.md # Guidelines for Python applications
|
||||
@@ -38,9 +43,11 @@ Dokumentace/
|
||||
│ ├── PROJECT.md # Project documentation template
|
||||
│ └── .gitignore # Shared, language-agnostic ignore rules
|
||||
│
|
||||
└── Zscaler/ # Corporate network setup
|
||||
├── ZSCALER_CERTIFICATE.md # Cert setup for Node, Python, git, cargo
|
||||
└── ZscalerRootCertificate-2048-SHA256.crt
|
||||
├── Zscaler/ # Corporate network setup
|
||||
│ ├── ZSCALER_CERTIFICATE.md # Cert setup for Node, Python, git, cargo
|
||||
│ └── ZscalerRootCertificate-2048-SHA256.crt
|
||||
│
|
||||
└── CHANGELOG.md # History of this repository
|
||||
```
|
||||
|
||||
## AI Coding Workflow
|
||||
@@ -62,11 +69,38 @@ Where the two disagree, **the design document wins**.
|
||||
|
||||
### Starting a new project
|
||||
|
||||
1. Copy `Project template/PROJECT.md` and `Project template/CHANGELOG.md` into the project root — both are committed.
|
||||
1. Copy `Project template/PROJECT.md` and `Project template/CHANGELOG.md` into the project root and write a `README.md` — all three are committed.
|
||||
2. Build `.gitignore` from `Project template/.gitignore` plus the `.gitignore` of the matching language folder.
|
||||
3. Copy `Claude/AGENTS.md` and the matching `DESIGN_DOCUMENT*.md` into the project root — these are **not** committed, they come from here.
|
||||
4. For Python, follow `Python/TEMPLATE.md` to generate the project skeleton.
|
||||
|
||||
### Skills
|
||||
|
||||
The skills in `Claude/skills/` are the source of truth; the copies Claude Code actually runs live in
|
||||
`~/.claude/skills/`. Install or refresh them by copying the whole folder across.
|
||||
|
||||
Two rules keep the two sides from drifting apart:
|
||||
|
||||
- **The folder name is the command.** For personal skills the frontmatter `name` is only a display
|
||||
label — `/documentation_context` comes from the directory, not from `name:`. Keep the two identical
|
||||
so renaming a folder can never silently change the command.
|
||||
- **Every skill carries a version** in `metadata.version`, incremented on every content change, the
|
||||
same way design documents carry `Document Version`:
|
||||
|
||||
```yaml
|
||||
---
|
||||
name: commit
|
||||
description: Updates changelog and proposes a concise verbal git commit message
|
||||
metadata:
|
||||
version: v2
|
||||
---
|
||||
```
|
||||
|
||||
There is no top-level `version:` field in the skill format. `metadata` is a free-form map that
|
||||
Claude Code ignores, and it is one of the six fields the [Agent Skills](https://agentskills.io)
|
||||
spec allows — so it also survives an upload to claude.ai or the Skills API. Any other invented
|
||||
key fails packaging with `Unexpected key(s) in SKILL.md frontmatter`.
|
||||
|
||||
## Key Conventions
|
||||
|
||||
- **Python tooling:** Poetry · Ruff · mypy · pytest · loguru
|
||||
@@ -74,7 +108,7 @@ Where the two disagree, **the design document wins**.
|
||||
- **Godot tooling:** gdformat · gdlint · GUT
|
||||
- **No `print()` for debugging** — the language's logging library, everywhere
|
||||
- **Static typing required** on every parameter and return value
|
||||
- **Line length:** 120 characters (Python), 100 soft limit (GDScript)
|
||||
- **Line length:** 120 characters (Python), 100 characters (Rust, rustfmt default), 100 soft limit (GDScript)
|
||||
- **Tests:** the framework named in the design document — pytest (Python, never `unittest`), built-in `#[test]` (Rust), GUT (Godot)
|
||||
- **Tasks:** single-line `TODO` / `FIXME` / `BUG` / `HACK` / `NOTE` comments in code — no checkboxes in documentation
|
||||
- **Versioning:** semantic, always ask before bumping, `CHANGELOG.md` updated first
|
||||
|
||||
Reference in New Issue
Block a user