agent-cv 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (4) hide show
  1. package/LICENSE +24 -0
  2. package/README.md +136 -0
  3. package/dist/cli.js +442 -0
  4. package/package.json +43 -0
package/LICENSE ADDED
@@ -0,0 +1,24 @@
1
+ Copyright (c) 2026-present agent-cv. All rights reserved.
2
+
3
+ The code in this repository is made available for reference purposes
4
+ only. Use of this software is subject to the agent-cv Terms of Service
5
+ at https://agent-cv.dev/terms.
6
+
7
+ You MAY:
8
+ - View and study the source code.
9
+ - Submit pull requests to improve the official agent-cv product.
10
+ - Run the software for personal, non-commercial evaluation.
11
+
12
+ You MAY NOT:
13
+ - Use this software, or any part of it, in any other product or service.
14
+ - Copy, modify, merge, publish, distribute, sublicense, or sell copies
15
+ of this software outside of the official agent-cv distribution.
16
+ - Use this software to build or operate a competing product or service.
17
+
18
+ All contributions to this repository are subject to the agent-cv
19
+ Contributor License Agreement. By submitting a pull request, you agree
20
+ that your contributions become the property of agent-cv.
21
+
22
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND.
23
+
24
+ For questions, contact hello@agent-cv.dev.
package/README.md ADDED
@@ -0,0 +1,136 @@
1
+ # agent-cv
2
+
3
+ Generate a technical CV from your local project directories using AI.
4
+
5
+ Your real project history lives on your filesystem, not on GitHub. Pet projects that never got pushed, corporate work behind VPNs, weekend experiments in obscure frameworks. `agent-cv` scans your directories, delegates analysis to AI, and generates a structured CV that captures work you'd otherwise forget.
6
+
7
+ ## Quick start
8
+
9
+ ```bash
10
+ # Install
11
+ bun install -g agent-cv
12
+
13
+ # Scan your projects
14
+ agent-cv scan ~/Projects
15
+
16
+ # Generate a CV (interactive: pick emails, pick projects)
17
+ agent-cv generate ~/Projects --output cv.md
18
+
19
+ # Publish your portfolio to the web
20
+ agent-cv publish
21
+ # → Your portfolio is live at https://agent-cv.dev/yourusername
22
+
23
+ # See your tech evolution
24
+ agent-cv stats
25
+
26
+ # What changed since last scan
27
+ agent-cv diff ~/Projects
28
+ ```
29
+
30
+ ## How it works
31
+
32
+ ```
33
+ agent-cv generate ~/Projects
34
+
35
+ ├── Scan: walks directories, detects projects by markers
36
+ │ (package.json, Cargo.toml, go.mod, pyproject.toml, ...)
37
+
38
+ ├── Email picker: shows all git emails found, you confirm yours
39
+ │ (saved for next time, supports multiple identities)
40
+
41
+ ├── Project selector: grouped by folder, searchable
42
+ │ ★ = your commits, 💎 = forgotten gem, gray = not yours
43
+
44
+ ├── Analyze: each project sent to AI for description
45
+ │ (Claude Code, Codex, OpenRouter, or any OpenAI-compatible API)
46
+
47
+ └── Render: structured markdown CV grouped by year
48
+ ```
49
+
50
+ ## Features
51
+
52
+ **Discovery**
53
+ - Detects 15+ project types (Node, Rust, Go, Python, Ruby, Java, Swift, Elixir, PHP, Docker...)
54
+ - Skips noise directories (node_modules, .git, dist, build, vendor, __pycache__)
55
+ - Nested project dedup (monorepo with sub-packages counted once)
56
+ - Parallel git operations (10 repos at a time)
57
+
58
+ **Identity**
59
+ - Multiple git email support (work, personal, old addresses)
60
+ - Auto-discovers emails from git config (global + per-repo)
61
+ - Interactive email picker with search on every run
62
+ - `--email` flag for generating someone else's CV
63
+
64
+ **Project selection**
65
+ - Grouped by directory with group-level toggle
66
+ - Instant search (just start typing)
67
+ - Pre-selects your projects, grays out forks/clones
68
+ - Detects uncommitted changes as sign of your work
69
+ - Forgotten gems: flags old projects with real work you probably forgot
70
+
71
+ **Analysis**
72
+ - Auto-detects available AI: Claude Code → Codex → API
73
+ - Claude Code gets full file access (richer analysis)
74
+ - API mode: OpenRouter, Anthropic, OpenAI, Ollama (any OpenAI-compatible endpoint)
75
+ - Privacy audit: .env files and hardcoded secrets excluded before AI sees anything
76
+ - `--dry-run` to preview what would be sent
77
+
78
+ **Output**
79
+ - Markdown CV grouped by year
80
+ - Duplicate project names disambiguated with parent path
81
+ - Persistent JSON inventory at `~/.agent-cv/inventory.json`
82
+ - Cached analysis survives between runs
83
+
84
+ ## Commands
85
+
86
+ | Command | Description |
87
+ |---------|-------------|
88
+ | `agent-cv scan <dir>` | Discover projects, save to inventory |
89
+ | `agent-cv analyze <path>` | Analyze a single project with AI |
90
+ | `agent-cv generate <dir>` | Full flow: scan → pick emails → pick projects → analyze → CV |
91
+ | `agent-cv diff <dir>` | Show new/updated/removed projects since last scan |
92
+ | `agent-cv stats` | Tech evolution timeline, language breakdown, framework ranking |
93
+ | `agent-cv publish` | Publish your portfolio to [agent-cv.dev](https://agent-cv.dev) |
94
+ | `agent-cv unpublish` | Remove your portfolio from agent-cv.dev |
95
+
96
+ ## Flags
97
+
98
+ ```
99
+ generate:
100
+ --output <file> Write to file instead of stdout
101
+ --agent <name> Force agent: claude, codex, api, auto (default: auto)
102
+ --dry-run Preview what would be sent to AI, no actual calls
103
+ --no-cache Force fresh analysis, ignore cached results
104
+ --all Skip project picker, include everything
105
+ --email <emails> Override emails (comma-separated), for someone else's CV
106
+
107
+ scan:
108
+ --verbose Show scan progress details
109
+ --json Output raw JSON
110
+ --email <emails> Additional emails to recognize as yours
111
+
112
+ analyze:
113
+ --agent <name> Force agent: claude, codex, api, auto
114
+ ```
115
+
116
+ ## AI setup
117
+
118
+ `agent-cv` auto-detects what you have. In priority order:
119
+
120
+ | Agent | How to set up |
121
+ |-------|--------------|
122
+ | Claude Code | [Install Claude Code](https://claude.ai/claude-code). Best results (reads files directly). |
123
+ | Codex CLI | `npm install -g @openai/codex` |
124
+ | Cursor Agent | [Install Cursor](https://cursor.com). Uses `agent --trust -p` headless mode. |
125
+ | OpenRouter | `export OPENROUTER_API_KEY=...` (one key, all models) |
126
+ | Anthropic | `export ANTHROPIC_API_KEY=...` |
127
+ | OpenAI | `export OPENAI_API_KEY=...` |
128
+ | Ollama | `export AGENT_CV_BASE_URL=http://localhost:11434/v1` (no key needed) |
129
+
130
+ ## Tech stack
131
+
132
+ Built with [Bun](https://bun.sh), [Ink](https://github.com/vadimdemedes/ink) (React for terminal), [Commander](https://github.com/tj/commander.js), [Zod](https://zod.dev), and [simple-git](https://github.com/steveukx/git-js).
133
+
134
+ ## License
135
+
136
+ [Proprietary](LICENSE). Source available for reference. Use is subject to the [agent-cv Terms of Service](https://agent-cv.dev/terms).