# ae-tracking

Tracking lifecycle toolkit — plan generation, code instrumentation, validation & upload. CLI + Claude Code / Codex skills.

## Install

```bash
npm install -g ae-tracking
ae-tracking init       # symlink skills into ~/.claude/skills/
ae-tracking auth login
```

macOS pulls the token from Chrome automatically (requires "Allow JavaScript from Apple Events" enabled). Other platforms: paste the token when prompted.

## Commands

```
ae-tracking init [--force] [--uninstall]
ae-tracking plan {draft,validate,upload,fetch,archive,delete,list-templates}
ae-tracking auth {login,status,clear}
ae-tracking wiki {query,sync}
ae-tracking debug {device,send,watch}
```

Run `ae-tracking <group> --help` for details.

## Skills

After `init`, three skills become available globally (Claude Code & Codex):

| Skill | Description |
|---|---|
| `generate-tracking-plan` | Interactive tracking plan creation — anchor → draft → refine → upload. Supports business dimension collection (revenue model, core loop, functional entries, currency system) and automatic event injection. |
| `generate-tracking-code` | Generate SDK tracking code / configs from a plan or xlsx. Supports client SDKs (Android, iOS, OpenHarmony, JS, Mini-program, Unity, Cocos) and server SDKs (Java, Python, Go, Node.js, PHP, C#). Server default: LoggerConsumer + LogBus2. |
| `data-integration-helper` | Q&A support for ThinkingData SDK integration and usage, including LogBus2 data import tool. |

## xlsx Validation

`ae-tracking plan validate` checks the tracking plan xlsx for:

- Object group child property type consistency
- Invalid property names (auto-fix: camelCase → snake_case)

## Development

```bash
git clone <repo>
cd ae-tracking
npm install
npm link          # makes `ae-tracking` point at this checkout
npm run build
npm test
```

## License

Apache-2.0