Skip to content

Commit 0c2ef18

Browse files
committed
docs(atlas): document skip_patterns, --stdin, and flat config format
1 parent 479db6e commit 0c2ef18

2 files changed

Lines changed: 23 additions & 0 deletions

File tree

.claude/context/atlas.md

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ mcptools atlas status # Index health summary
3636
mcptools atlas status --json # JSON output
3737
mcptools atlas index --dry-run # Show what would be indexed (by tier)
3838
mcptools atlas update --dry-run # Show what would change (adds/mods/deletes)
39+
git status --porcelain | mcptools atlas index --stdin # Index only the listed paths
3940
```
4041

4142
The `index` and `update` commands display ETA and elapsed time during LLM description phases, and print total elapsed time on completion.
@@ -58,6 +59,14 @@ After the tree-sitter scan, `atlas index` performs a single bottom-up pass over
5859

5960
Because directories are processed deepest-first, parent directories always see their children's descriptions. The Ollama provider requires a running Ollama server (`ollama serve`) and the model to be available.
6061

62+
Descriptions are expected in `SHORT:` / `LONG:` form. When a model ignores that format, the response is still accepted: the first line (truncated to 80 characters) becomes the short description and the remaining text becomes the long one. Only an empty response is an error.
63+
64+
### `atlas index --stdin` — Index an Explicit Path List
65+
66+
`atlas index --stdin` reads file paths from standard input, one per line, instead of walking the repository. Each line may be a plain path (`src/foo.ts`) or `git status --porcelain` output (`M src/foo.ts`, `?? new.ts`, `R old.ts -> new.ts` — the new path wins). Blank lines and `#` comments are ignored, as are paths that don't resolve to a file.
67+
68+
Only the listed files are indexed: the existing index is neither cleared nor hash-checked, so `--stdin` adds to or refreshes the index rather than rebuilding it. `skip_patterns` are not applied — the caller decides what to feed in.
69+
6170
### `atlas peek` for Files and Directories
6271

6372
`atlas peek <path>` accepts either a file or directory path. For files it shows the file summary and symbol signatures. For directories it shows the directory description, child entries with their descriptions, and aggregated symbols.
@@ -82,10 +91,23 @@ max_file_tokens = 10000
8291
ollama_url = "http://localhost:11434"
8392
file_model = "atlas"
8493
dir_model = "atlas"
94+
skip_patterns = ["*.test.ts", "*.md", "*.json", "*.yml"]
8595
```
8696

8797
All fields are optional and fall back to defaults. Environment variables override config file values.
8898

99+
Fields may also be written flat, without the `[atlas]` header. When a key appears both flat and under `[atlas]`, the `[atlas]` value wins.
100+
101+
### Ignore Patterns
102+
103+
The `skip_patterns` field accepts glob patterns (powered by the `globset` crate), matched against repository-relative paths. Files matching any pattern are skipped by the `index` and `update` repo walks, so they never enter the index and never appear in tree, peek, or status output. `atlas index --stdin` bypasses these patterns. An invalid pattern fails the command.
104+
105+
Common patterns:
106+
- `"*.test.ts"` — skip test files by extension
107+
- `"*.md"` — skip markdown files
108+
- `"packages/mom/**"` — skip an entire directory tree
109+
- `"*.{json,yml,yaml}"` — skip multiple extensions
110+
89111
### Environment Variables
90112

91113
| Variable | Default | Description |

CLAUDE.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -97,6 +97,7 @@ mcptools atlas sync # Force full re-index
9797
mcptools atlas status # Index health (--json)
9898
mcptools atlas index --dry-run # Show what would be indexed
9999
mcptools atlas update --dry-run # Show what would change
100+
git status --porcelain | mcptools atlas index --stdin # Index only the listed paths
100101
```
101102

102103
### Jira

0 commit comments

Comments
 (0)