@conceptcraft/mindframes 0.1.1
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.
- package/README.md +252 -0
- package/bin/cli.js +3 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +2757 -0
- package/dist/index.js.map +1 -0
- package/package.json +67 -0
package/README.md
ADDED
|
@@ -0,0 +1,252 @@
|
|
|
1
|
+
# @conceptcraft/mindframes
|
|
2
|
+
|
|
3
|
+
Command-line tool for creating AI-powered presentations with [Mindframes](https://mindframes.app).
|
|
4
|
+
|
|
5
|
+
## Installation
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
npm install -g @conceptcraft/mindframes
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
Or use directly with npx:
|
|
12
|
+
|
|
13
|
+
```bash
|
|
14
|
+
npx @conceptcraft/mindframes create "Topic" --context "your content"
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
## Setup
|
|
18
|
+
|
|
19
|
+
Get your API key from [Mindframes Settings](https://mindframes.app/settings/api-keys), then configure:
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
# Interactive setup (recommended)
|
|
23
|
+
mindframes config init
|
|
24
|
+
|
|
25
|
+
# Or set directly
|
|
26
|
+
mindframes config set api-key YOUR_API_KEY
|
|
27
|
+
|
|
28
|
+
# Or use environment variable
|
|
29
|
+
export CC_SLIDES_API_KEY="your-api-key"
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
## Usage
|
|
33
|
+
|
|
34
|
+
### Create a Presentation
|
|
35
|
+
|
|
36
|
+
**Context is required** for meaningful presentations. Provide it via one of these methods:
|
|
37
|
+
|
|
38
|
+
```bash
|
|
39
|
+
# Direct text context
|
|
40
|
+
mindframes create "Q4 Report" --context "Revenue: $10M, Growth: 25%, New customers: 500"
|
|
41
|
+
|
|
42
|
+
# From a file (markdown, text, or JSON)
|
|
43
|
+
mindframes create "Research Summary" --context-file ./research.md
|
|
44
|
+
|
|
45
|
+
# Pipe content from another command
|
|
46
|
+
cat notes.md | mindframes create "Meeting Notes"
|
|
47
|
+
|
|
48
|
+
# Scrape content from URLs
|
|
49
|
+
mindframes create "Competitor Analysis" --sources https://example.com/report
|
|
50
|
+
|
|
51
|
+
# Combine multiple sources
|
|
52
|
+
cat data.json | mindframes create "Analysis" --sources https://article.com --context "Focus on Q4"
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
### Create Options
|
|
56
|
+
|
|
57
|
+
| Option | Description | Default |
|
|
58
|
+
|--------|-------------|---------|
|
|
59
|
+
| `-n, --slides <count>` | Number of slides (1-20) | 10 |
|
|
60
|
+
| `-m, --mode <mode>` | Quality: best, balanced, fast, ultrafast, instant | balanced |
|
|
61
|
+
| `-t, --tone <tone>` | Tone: creative, professional, educational, formal, casual | professional |
|
|
62
|
+
| `--amount <amount>` | Density: minimal, concise, detailed, extensive | concise |
|
|
63
|
+
| `--audience <text>` | Target audience description | General Audience |
|
|
64
|
+
| `-l, --language <lang>` | Output language code | en |
|
|
65
|
+
| `-b, --brand <id\|url>` | Branding ID or URL | - |
|
|
66
|
+
| `-c, --context <text>` | Direct text context | - |
|
|
67
|
+
| `--context-file <path>` | Read context from file | - |
|
|
68
|
+
| `--sources <urls...>` | URLs to scrape for context | - |
|
|
69
|
+
| `--styling <mode>` | freeform, brand-only, brand-plus-style, style-only, no-styling | freeform |
|
|
70
|
+
| `--reference-url <url>` | Style reference image URL | - |
|
|
71
|
+
| `--thinking-depth <depth>` | AI depth: quick, moderate, deep, profound | moderate |
|
|
72
|
+
| `-o, --output <format>` | Output: human, json, quiet | human |
|
|
73
|
+
| `--no-stream` | Disable progress streaming | - |
|
|
74
|
+
| `--debug` | Enable debug logging | - |
|
|
75
|
+
|
|
76
|
+
### Examples
|
|
77
|
+
|
|
78
|
+
```bash
|
|
79
|
+
# High-quality investor pitch
|
|
80
|
+
mindframes create "Series A Pitch" -m best -t formal --slides 12 \
|
|
81
|
+
--audience "Venture capitalists" --context-file ./pitch-notes.md
|
|
82
|
+
|
|
83
|
+
# Quick internal update
|
|
84
|
+
mindframes create "Weekly Update" -m instant -t casual --slides 5 \
|
|
85
|
+
--context "Shipped 3 features, fixed 12 bugs, 2 new hires joining Monday"
|
|
86
|
+
|
|
87
|
+
# Educational content with research
|
|
88
|
+
mindframes create "AI in Healthcare" -t educational --amount detailed \
|
|
89
|
+
--sources https://research-paper.pdf https://news-article.com
|
|
90
|
+
|
|
91
|
+
# JSON output for scripting
|
|
92
|
+
URL=$(mindframes create "Demo" --context "..." -o json | jq -r '.viewUrl')
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
### List Presentations
|
|
96
|
+
|
|
97
|
+
```bash
|
|
98
|
+
mindframes list # List recent presentations
|
|
99
|
+
mindframes list --format table # Table format
|
|
100
|
+
mindframes list --format json # JSON for scripting
|
|
101
|
+
mindframes list --limit 50 # More results
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
### View Presentation Details
|
|
105
|
+
|
|
106
|
+
```bash
|
|
107
|
+
mindframes get <id> # Get presentation details
|
|
108
|
+
mindframes get <id> --format json # JSON format
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
### Delete Presentation
|
|
112
|
+
|
|
113
|
+
```bash
|
|
114
|
+
mindframes delete <id> # Delete with confirmation
|
|
115
|
+
mindframes delete <id> --force # Skip confirmation
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
### Export & Import
|
|
119
|
+
|
|
120
|
+
```bash
|
|
121
|
+
# Export to ZIP
|
|
122
|
+
mindframes export <id> -o presentation.zip
|
|
123
|
+
|
|
124
|
+
# Import from ZIP
|
|
125
|
+
mindframes import presentation.zip
|
|
126
|
+
mindframes import presentation.zip --dry-run # Validate only
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
### Branding
|
|
130
|
+
|
|
131
|
+
```bash
|
|
132
|
+
mindframes branding list # List brand profiles
|
|
133
|
+
mindframes branding extract <url> # Extract branding from website
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
### Configuration
|
|
137
|
+
|
|
138
|
+
```bash
|
|
139
|
+
mindframes config init # Interactive setup
|
|
140
|
+
mindframes config show # Show current config
|
|
141
|
+
mindframes config set api-key KEY # Set API key
|
|
142
|
+
mindframes config set api-url URL # Set custom API URL
|
|
143
|
+
mindframes config path # Show config file path
|
|
144
|
+
mindframes config clear # Clear all config
|
|
145
|
+
```
|
|
146
|
+
|
|
147
|
+
### Check Authentication
|
|
148
|
+
|
|
149
|
+
```bash
|
|
150
|
+
mindframes whoami # Show current user and team
|
|
151
|
+
```
|
|
152
|
+
|
|
153
|
+
### AI Coding Assistant Integration
|
|
154
|
+
|
|
155
|
+
Install the Mindframes skill for Claude Code, Cursor, and other AI coding assistants:
|
|
156
|
+
|
|
157
|
+
```bash
|
|
158
|
+
mindframes skill install # Auto-detect and install to all editors
|
|
159
|
+
mindframes skill install --local # Install to current project only
|
|
160
|
+
mindframes skill show # View skill content
|
|
161
|
+
mindframes skill uninstall # Remove skill from editors
|
|
162
|
+
```
|
|
163
|
+
|
|
164
|
+
Supported editors: Claude Code, Cursor, Codex, OpenCode, Windsurf, Agent
|
|
165
|
+
|
|
166
|
+
## Scripting Examples
|
|
167
|
+
|
|
168
|
+
```bash
|
|
169
|
+
# Batch export all presentations
|
|
170
|
+
mindframes list --format ids | xargs -I {} mindframes export {} -o {}.zip
|
|
171
|
+
|
|
172
|
+
# Filter presentations by JSON
|
|
173
|
+
mindframes list --format json | jq '.[] | select(.slides > 10)'
|
|
174
|
+
|
|
175
|
+
# Generate from file and open URL
|
|
176
|
+
mindframes create "Report" --context-file data.md -o json | jq -r '.viewUrl' | xargs open
|
|
177
|
+
```
|
|
178
|
+
|
|
179
|
+
## Output Formats
|
|
180
|
+
|
|
181
|
+
- `human` (default): Colored, formatted output for terminal
|
|
182
|
+
- `json`: Machine-readable JSON
|
|
183
|
+
- `quiet`: Minimal output, just errors
|
|
184
|
+
- `table`: Tabular format for list commands
|
|
185
|
+
|
|
186
|
+
## Exit Codes
|
|
187
|
+
|
|
188
|
+
| Code | Meaning |
|
|
189
|
+
|------|---------|
|
|
190
|
+
| 0 | Success |
|
|
191
|
+
| 1 | General error |
|
|
192
|
+
| 2 | Authentication error |
|
|
193
|
+
| 3 | Not found |
|
|
194
|
+
| 4 | Rate limit exceeded |
|
|
195
|
+
| 5 | Network error |
|
|
196
|
+
| 6 | Invalid input |
|
|
197
|
+
|
|
198
|
+
## Environment Variables
|
|
199
|
+
|
|
200
|
+
| Variable | Description |
|
|
201
|
+
|----------|-------------|
|
|
202
|
+
| `CC_SLIDES_API_KEY` | API key for authentication |
|
|
203
|
+
| `CC_SLIDES_API_URL` | Custom API URL (default: https://mindframes.app) |
|
|
204
|
+
|
|
205
|
+
## Requirements
|
|
206
|
+
|
|
207
|
+
- Node.js 20.0.0 or higher
|
|
208
|
+
|
|
209
|
+
## Development
|
|
210
|
+
|
|
211
|
+
```bash
|
|
212
|
+
# Clone and install
|
|
213
|
+
cd packages/cli
|
|
214
|
+
pnpm install
|
|
215
|
+
|
|
216
|
+
# Build
|
|
217
|
+
pnpm build
|
|
218
|
+
|
|
219
|
+
# Run locally
|
|
220
|
+
./bin/cli.js --help
|
|
221
|
+
|
|
222
|
+
# Watch mode
|
|
223
|
+
pnpm dev
|
|
224
|
+
```
|
|
225
|
+
|
|
226
|
+
## Publishing
|
|
227
|
+
|
|
228
|
+
The CLI is published to npm under the `@conceptcraft` organization.
|
|
229
|
+
|
|
230
|
+
**npm org:** [@conceptcraft](https://www.npmjs.com/org/conceptcraft)
|
|
231
|
+
|
|
232
|
+
### Release Process
|
|
233
|
+
|
|
234
|
+
1. **Manual release** (recommended):
|
|
235
|
+
- Go to GitHub Actions → "Publish CLI to npm"
|
|
236
|
+
- Click "Run workflow"
|
|
237
|
+
- Enter version (e.g., `0.2.0`)
|
|
238
|
+
- Select dist-tag (`latest`, `beta`, or `next`)
|
|
239
|
+
|
|
240
|
+
2. **Tag-based release**:
|
|
241
|
+
```bash
|
|
242
|
+
git tag cli-v0.2.0
|
|
243
|
+
git push origin cli-v0.2.0
|
|
244
|
+
```
|
|
245
|
+
|
|
246
|
+
### Required Secrets
|
|
247
|
+
|
|
248
|
+
- `NPM_TOKEN`: npm automation token with publish access to `@conceptcraft` org
|
|
249
|
+
|
|
250
|
+
## License
|
|
251
|
+
|
|
252
|
+
MIT
|
package/bin/cli.js
ADDED
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
#!/usr/bin/env node
|