@pickled-dev/cli 0.1.0 β†’ 0.3.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 (3) hide show
  1. package/README.md +83 -74
  2. package/dist/index.js +246 -106
  3. package/package.json +2 -1
package/README.md CHANGED
@@ -2,122 +2,131 @@
2
2
 
3
3
  > Stay fresh in AI πŸ₯’
4
4
 
5
- Your developer tool is great. But does AI know that?
6
-
7
- Pickled checks how often AI models actually recommend your tool when developers ask questions. Point it at a GitHub repo, and we'll tell you if you're well preservedβ€”or starting to spoil.
5
+ Test how well AI responds to questions about your developer tool. Define scenarios, run checks, and see your freshness score.
8
6
 
9
7
  ## Installation
10
8
 
11
9
  ```bash
12
- # Global install
13
10
  bun add -g @pickled-dev/cli
14
-
15
- # Or run directly
16
- bunx @pickled-dev/cli check github.com/org/repo
17
11
  ```
18
12
 
19
- You'll need an Anthropic API key:
13
+ ## Usage
14
+
15
+ ### 1. Initialize config
20
16
 
21
17
  ```bash
22
- export ANTHROPIC_API_KEY=your-key-here
18
+ pickled init
23
19
  ```
24
20
 
25
- ## Usage
21
+ Creates a `pickled.yml` file:
26
22
 
27
- ```bash
28
- pickled check <repo>
29
- ```
23
+ ```yaml
24
+ tool:
25
+ name: "your-tool"
26
+ description: "What your tool does"
30
27
 
31
- That's it. We'll handle the rest.
28
+ scenarios:
29
+ - name: "Installation"
30
+ prompt: "How do I install this tool?"
32
31
 
33
- ### Options
32
+ - name: "Getting started"
33
+ prompt: "How do I set up this tool for my project?"
34
34
 
35
- | Flag | What it does |
36
- |------|--------------|
37
- | `--json` | Output as fresh JSON |
38
- | `-o, --output <file>` | Save your freshness report (.json or .xml) |
39
- | `-v, --verbose` | Show the full pickling process |
40
- | `-c, --competitors <list>` | Bring your own shelf mates (skip auto-discovery) |
35
+ - name: "Basic usage"
36
+ prompt: "Show me a basic example of using this tool"
37
+ ```
38
+
39
+ ### 2. Edit your config
41
40
 
42
- ### Examples
41
+ Update `pickled.yml` with your actual tool info and scenarios developers might ask about.
42
+
43
+ ### 3. Run check
43
44
 
44
45
  ```bash
45
- # How fresh is zod?
46
- pickled check github.com/colinhacks/zod
46
+ pickled check
47
+ ```
47
48
 
48
- # Check against specific competitors
49
- pickled check github.com/colinhacks/zod -c "yup,joi,valibot"
49
+ ## Commands
50
50
 
51
- # Save the report
52
- pickled check github.com/colinhacks/zod -o report.json
51
+ ### `pickled init [path]`
53
52
 
54
- # Watch the whole process
55
- pickled check github.com/colinhacks/zod -v
56
- ```
53
+ Create a starter `pickled.yml` config file.
54
+
55
+ ### `pickled check [path]`
56
+
57
+ Run freshness checks and report results.
57
58
 
58
- ## What You'll See
59
+ | Option | Description |
60
+ | --------------------- | ---------------------- |
61
+ | `--json` | Output as JSON |
62
+ | `-o, --output <file>` | Save report to file |
63
+ | `-v, --verbose` | Show detailed progress |
64
+ | `-t, --threshold <n>` | Min score % to pass |
65
+
66
+ ## Example Output
59
67
 
60
68
  ```
61
- πŸ₯’ Freshness Report: zod
69
+ πŸ₯’ Freshness Check
62
70
  ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
63
71
 
64
- πŸ“¦ What's in the jar: zod - TypeScript-first schema validation
65
- 🏷️ Domain: validation
66
- πŸ«™ Who else is on the shelf: yup, joi, valibot
72
+ Tool: zod
73
+
74
+ [default] βœ“ "Installation" - Well preserved (92%)
75
+ [default] βœ“ "Basic parsing" - Fresh (85%)
76
+ [default] ⚠ "Error handling" - Going stale (65%)
77
+ Missing: safeParse details
67
78
 
68
79
  ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
69
- πŸ“Š HOW FRESH ARE YOU?
70
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
80
+ Freshness Score: 81% πŸ₯’πŸ₯’πŸ₯’πŸ₯’β–‘
71
81
 
72
- Topic: "TypeScript validation library"
73
- πŸ₯’ zod: 8/10 (80%) - Well preserved!
74
- β”œβ”€ yup: 5/10 (50%)
75
- └─ joi: 2/10 (20%)
82
+ πŸ₯’ Looking fresh! Your docs are doing well.
83
+ ```
76
84
 
77
- Topic: "Runtime type checking"
78
- πŸ₯’ zod: 7/10 (70%) - Well preserved!
79
- β”œβ”€ valibot: 6/10 (60%)
80
- └─ yup: 3/10 (30%)
85
+ ## Freshness Scores
81
86
 
82
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
83
- πŸ“ˆ FRESHNESS SUMMARY
84
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
87
+ | Score | Status | Meaning |
88
+ |-------|--------|---------|
89
+ | 90%+ | Well preserved | AI nails it |
90
+ | 70-89% | Fresh | Good, minor gaps |
91
+ | 50-69% | Going stale | Needs attention |
92
+ | <50% | Gone sour | Major documentation gaps |
85
93
 
86
- Overall freshness: 75% - Looking Fresh πŸ₯’
87
- Top of the shelf in: 2/2 topics
94
+ ## Config Reference
88
95
 
89
- πŸ₯’ You're kind of a big dill!
90
- Stay fresh! πŸ₯’
91
- ```
96
+ ```yaml
97
+ tool:
98
+ name: "tool-name" # Required: your tool's name
99
+ description: "desc" # Required: what it does
92
100
 
93
- ## How It Works
101
+ scenarios: # Required: scenarios to check
102
+ - name: "Scenario name" # Display name
103
+ prompt: "The question" # What to ask AI
104
+ target: target-name # Optional: specific target
94
105
 
95
- 1. **Opens the jar** β€” Fetches your GitHub repo
96
- 2. **Checks what's inside** β€” Extracts product info from README and package.json
97
- 3. **Sees who else is on the shelf** β€” Discovers competitors in your space
98
- 4. **Picks the right questions** β€” Generates topics developers actually ask about
99
- 5. **Checks your freshness** β€” Queries AI with those questions
100
- 6. **Gives you the truth** β€” Reports how often you get picked vs the competition
106
+ targets: # Optional: named targets
107
+ claude-sonnet:
108
+ category: cli
109
+ provider: claude-code
110
+ model: claude-sonnet-4-20250514
101
111
 
102
- ## Why This Matters
112
+ threshold: 80 # Optional: min score % to pass
113
+ ```
114
+
115
+ ## CI/CD Integration
103
116
 
104
- AI assistants are becoming the new Stack Overflow. When a developer asks "what's the best validation library?", you want to be the answer.
117
+ ```yaml
118
+ # GitHub Actions
119
+ - name: Check AI freshness
120
+ run: pickled check --threshold 80
121
+ ```
105
122
 
106
- If you're not getting recommended, your visibility is spoiling. Time to do something about it.
123
+ Fail the build if AI can't answer questions about your tool correctly.
107
124
 
108
125
  ## Local Development
109
126
 
110
127
  ```bash
111
128
  # From the monorepo root
112
129
  bun install
113
-
114
- # Copy the example env file and add your API key
115
- cp apps/cli/.env.example .env
116
-
117
- # Run the CLI
118
- bun dev:cli check github.com/org/repo
130
+ bun run dev:cli -- init
131
+ bun run dev:cli -- check
119
132
  ```
120
-
121
- ---
122
-
123
- Built with πŸ₯’ by the Pickled team