WIP: A simple cli for daily tangled use cases and AI integration. This is for my personal use right now, but happy if others get mileage from it! :)
1# Vendored Lexicons
2
3This directory contains vendored copies of AT Protocol lexicon definitions for the Tangled.org service.
4
5## Source
6
7These lexicons are downloaded from the tangled.org core repository:
8- **Source**: `https://tangled.org/tangled.org/core/raw/master/lexicons/`
9- **Repository**: `https://tangled.org/tangled.org/core`
10- **Last Updated**: 2026-02-09
11
12## Structure
13
14- `sh/tangled/` - Tangled-specific lexicons
15 - `issue/` - Issue record types
16 - `pulls/` - Pull request record types
17 - `repo/` - Repository record types
18 - `label/` - Label/tag record types
19 - `pipeline/` - CI/CD pipeline types
20 - `actor/`, `feed/`, `graph/`, `git/`, `knot/`, `spindle/`, `string/` - Other types
21
22## Updating Lexicons
23
24When Tangled.org updates their lexicon schemas, run the update script:
25
26```bash
27npm run update-lexicons
28```
29
30This script:
311. Downloads the latest lexicon files from tangled.org over HTTPS
322. Saves them to the `lexicons/` directory
333. Preserves the directory structure
34
35After updating lexicons:
361. Update the "Last Updated" date in this README
372. Regenerate client code: `npm run codegen`
383. Run tests to ensure compatibility: `npm test`
394. Commit both lexicon updates and generated code changes
40
41**Manual Update** (if script fails):
42- Lexicons can be manually downloaded from: `https://tangled.org/tangled.org/core/raw/master/lexicons/<path>`
43- Example: `https://tangled.org/tangled.org/core/raw/master/lexicons/issue/issue.json`
44
45## Code Generation
46
47Client TypeScript code is generated from these lexicons using `@atproto/lex-cli`:
48
49```bash
50npm run codegen
51```
52
53This generates type-safe client code in `src/lexicon/` which is committed to version control.