50c 2.0.1 → 2.0.3
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 +141 -47
- package/lib/packs/labs.js +4 -20
- package/lib/packs/labs_plus.js +21 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,85 +1,179 @@
|
|
|
1
1
|
# 50c
|
|
2
2
|
|
|
3
|
-
AI toolkit. One install,
|
|
3
|
+
AI toolkit. One install, 62+ tools.
|
|
4
4
|
|
|
5
5
|
```bash
|
|
6
|
-
npx 50c
|
|
6
|
+
npx -y 50c
|
|
7
7
|
```
|
|
8
8
|
|
|
9
|
-
## Setup
|
|
9
|
+
## Quick Setup by Platform
|
|
10
|
+
|
|
11
|
+
### Local IDEs (Verdent, Cursor, Windsurf, Claude Desktop)
|
|
12
|
+
|
|
13
|
+
```json
|
|
14
|
+
{
|
|
15
|
+
"mcpServers": {
|
|
16
|
+
"50c": {
|
|
17
|
+
"command": "npx",
|
|
18
|
+
"args": ["-y", "50c"],
|
|
19
|
+
"env": { "FIFTYC_API_KEY": "cv_xxx" }
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
Config file locations:
|
|
26
|
+
- **Verdent**: `~/.verdent/mcp.json`
|
|
27
|
+
- **Cursor**: `~/.cursor/mcp.json`
|
|
28
|
+
- **Claude Desktop**: `~/Library/Application Support/Claude/claude_desktop_config.json` (Mac) or `%APPDATA%\Claude\claude_desktop_config.json` (Windows)
|
|
29
|
+
|
|
30
|
+
### Cloud IDEs (Replit, Lovable, CodeSandbox, Gitpod)
|
|
10
31
|
|
|
11
|
-
**Verdent / Cursor / Claude Desktop:**
|
|
12
32
|
```json
|
|
13
33
|
{
|
|
14
34
|
"mcpServers": {
|
|
15
35
|
"50c": {
|
|
16
36
|
"command": "npx",
|
|
17
37
|
"args": ["-y", "50c"],
|
|
18
|
-
"env": {
|
|
19
|
-
"FIFTYC_API_KEY": "your-key"
|
|
20
|
-
}
|
|
38
|
+
"env": { "FIFTYC_API_KEY": "cv_xxx" }
|
|
21
39
|
}
|
|
22
40
|
}
|
|
23
41
|
}
|
|
24
42
|
```
|
|
25
43
|
|
|
26
|
-
|
|
44
|
+
Cloud environments auto-detect - all data syncs to 50c.ai (no local storage).
|
|
45
|
+
|
|
46
|
+
### Global Install (faster startup, explicit version control)
|
|
47
|
+
|
|
27
48
|
```bash
|
|
28
|
-
|
|
29
|
-
npx 50c discover
|
|
30
|
-
npx 50c enable beacon
|
|
49
|
+
npm i -g 50c
|
|
31
50
|
```
|
|
32
51
|
|
|
33
|
-
|
|
52
|
+
Then in MCP config:
|
|
53
|
+
```json
|
|
54
|
+
{
|
|
55
|
+
"mcpServers": {
|
|
56
|
+
"50c": {
|
|
57
|
+
"command": "50c",
|
|
58
|
+
"env": { "FIFTYC_API_KEY": "cv_xxx" }
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
```
|
|
34
63
|
|
|
35
|
-
|
|
36
|
-
|------|-------------|
|
|
37
|
-
| `web_search` | Search the web |
|
|
38
|
-
| `page_fetch` | Fetch any URL |
|
|
39
|
-
| `domain_check` | Check domain availability |
|
|
40
|
-
| `vault_*` | Secure credential storage |
|
|
64
|
+
### Bun (fastest)
|
|
41
65
|
|
|
42
|
-
|
|
66
|
+
```json
|
|
67
|
+
{
|
|
68
|
+
"mcpServers": {
|
|
69
|
+
"50c": {
|
|
70
|
+
"command": "bunx",
|
|
71
|
+
"args": ["50c"],
|
|
72
|
+
"env": { "FIFTYC_API_KEY": "cv_xxx" }
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
```
|
|
43
77
|
|
|
44
|
-
|
|
45
|
-
|------|-------------|
|
|
46
|
-
| `hints` | 5 brutal hints, 2 words each |
|
|
47
|
-
| `roast` | Code review - 3 flaws + fixes |
|
|
48
|
-
| `quick_vibe` | 3 unconventional ideas |
|
|
49
|
-
| `name_it` | 5 names + domain check |
|
|
50
|
-
| `price_it` | SaaS pricing strategy |
|
|
51
|
-
| `compute` | Run Python (sandboxed) |
|
|
78
|
+
## Troubleshooting
|
|
52
79
|
|
|
53
|
-
|
|
80
|
+
**Tools return "Invalid API key":**
|
|
81
|
+
```bash
|
|
82
|
+
# Clear npx cache and reinstall
|
|
83
|
+
npm cache clean --force
|
|
84
|
+
rm -rf ~/.npm/_npx # Mac/Linux
|
|
85
|
+
# or: Remove-Item -Recurse $env:LOCALAPPDATA\npm-cache\_npx # Windows
|
|
54
86
|
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
87
|
+
# Restart your IDE
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
**Check what's installed:**
|
|
91
|
+
```bash
|
|
92
|
+
npm list -g 50c # Global install
|
|
93
|
+
npx 50c status # Current config
|
|
94
|
+
```
|
|
63
95
|
|
|
64
|
-
##
|
|
96
|
+
## CLI Commands
|
|
97
|
+
|
|
98
|
+
```bash
|
|
99
|
+
npx 50c status # Show tier, credits, enabled packs
|
|
100
|
+
npx 50c discover # List available packs
|
|
101
|
+
npx 50c enable cf # Enable Cloudflare pack
|
|
102
|
+
npx 50c disable whm # Disable WHM pack
|
|
103
|
+
npx 50c packs # Show all packs
|
|
104
|
+
```
|
|
65
105
|
|
|
66
|
-
|
|
106
|
+
## Tools by Tier
|
|
107
|
+
|
|
108
|
+
### Free ($0)
|
|
109
|
+
|
|
110
|
+
| Tool | Description |
|
|
67
111
|
|------|-------------|
|
|
68
|
-
| `
|
|
69
|
-
| `
|
|
70
|
-
| `
|
|
71
|
-
| `
|
|
112
|
+
| `web_search` | Search the web |
|
|
113
|
+
| `page_fetch` | Fetch any URL |
|
|
114
|
+
| `domain_check` | Check domain availability |
|
|
115
|
+
| `check_balance` | Check credits |
|
|
116
|
+
| `vault_*` | Secure credential storage (12 tools) |
|
|
117
|
+
|
|
118
|
+
### Starter ($29/mo) - 1,000 credits
|
|
119
|
+
|
|
120
|
+
| Tool | Cost | Description |
|
|
121
|
+
|------|------|-------------|
|
|
122
|
+
| `hints` | $0.05 | 5 brutal hints, 2 words each |
|
|
123
|
+
| `hints_plus` | $0.10 | 10 hints, 4 words each |
|
|
124
|
+
| `roast` | $0.05 | Code review - 3 flaws + fixes |
|
|
125
|
+
| `quick_vibe` | $0.05 | 3 unconventional ideas |
|
|
126
|
+
| `one_liner` | $0.02 | Elevator pitch in 8 words |
|
|
127
|
+
| `name_it` | $0.03 | 5 names + domain availability |
|
|
128
|
+
| `price_it` | $0.05 | SaaS pricing strategy |
|
|
129
|
+
| `compute` | $0.02 | Run Python (sandboxed, 10s) |
|
|
130
|
+
|
|
131
|
+
### Pro ($99/mo) - 10,000 credits
|
|
132
|
+
|
|
133
|
+
| Tool | Cost | Description |
|
|
134
|
+
|------|------|-------------|
|
|
135
|
+
| `genius` | $0.50 | Deep problem solving |
|
|
136
|
+
| `mind_opener` | $0.08 | 5 curious angles |
|
|
137
|
+
| `idea_fold` | $0.10 | Test claims with rigor |
|
|
138
|
+
| `context_health` | $0.05 | Token zone analysis |
|
|
139
|
+
| `context_compress` | $0.08 | Extract & compress context |
|
|
140
|
+
| `context_extract` | $0.05 | Extract decisions/entities |
|
|
141
|
+
| `context_reposition` | $0.05 | Attention optimization |
|
|
142
|
+
| `cf_*` | varies | Cloudflare control (16 tools) |
|
|
143
|
+
| `wp_*` | varies | WordPress management |
|
|
144
|
+
| `ux_*` | varies | UI/UX toolkit |
|
|
145
|
+
|
|
146
|
+
### Enterprise ($499/mo) - 100,000 credits
|
|
147
|
+
|
|
148
|
+
| Tool | Cost | Description |
|
|
149
|
+
|------|------|-------------|
|
|
150
|
+
| `bcalc` | $0.15 | Mathematical discovery engine |
|
|
151
|
+
| `bcalc_why` | $0.20 | Deep math explanations |
|
|
152
|
+
| `genius_plus` | $0.65 | Self-improving code gen |
|
|
153
|
+
| `cvi_loop` | $0.30 | Constraint-verified intelligence |
|
|
154
|
+
| `cvi_verify` | $0.10 | Verify against constraints |
|
|
155
|
+
| `discovery_collision` | $0.25 | Tool combination engine |
|
|
156
|
+
| `chaos_fingerprint` | $0.15 | Number DNA clustering |
|
|
157
|
+
| `resonance` | $0.10 | Divisor/digit-sum resonance |
|
|
158
|
+
| `prime_residue` | $0.15 | Open conjecture testing |
|
|
159
|
+
| `echo_sequence` | $0.10 | Novel sequence generator |
|
|
160
|
+
| `conversation_diagnostic` | $0.15 | Detect loops/drift |
|
|
161
|
+
| `handoff` | $0.10 | Generate handoff document |
|
|
162
|
+
| `whm_*` | varies | WHM/cPanel/SSH (39 tools) |
|
|
72
163
|
|
|
73
164
|
## How It Works
|
|
74
165
|
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
166
|
+
1. Get API key at [50c.ai](https://50c.ai)
|
|
167
|
+
2. Add to your IDE's MCP config
|
|
168
|
+
3. Tools appear automatically based on your tier
|
|
169
|
+
4. Say "enable cf" to add Cloudflare tools
|
|
170
|
+
5. LLM auto-enables packs when you ask for related tasks
|
|
78
171
|
|
|
79
172
|
## Links
|
|
80
173
|
|
|
81
174
|
- [50c.ai](https://50c.ai) - Get API key
|
|
82
|
-
- [
|
|
175
|
+
- [docs.50c.ai](https://docs.50c.ai) - Full documentation
|
|
176
|
+
- [sales.50c.ai](https://sales.50c.ai) - Upgrade tier
|
|
83
177
|
|
|
84
178
|
---
|
|
85
|
-
*genxis.com*
|
|
179
|
+
*Built by [genxis.com](https://genxis.com)*
|
package/lib/packs/labs.js
CHANGED
|
@@ -17,9 +17,7 @@ async function ideaFold(claim) {
|
|
|
17
17
|
return apiRequest('POST', '/tools/idea_fold', { claim });
|
|
18
18
|
}
|
|
19
19
|
|
|
20
|
-
|
|
21
|
-
return apiRequest('POST', '/tools/bcalc', { expression, mode });
|
|
22
|
-
}
|
|
20
|
+
|
|
23
21
|
|
|
24
22
|
async function contextHealth(text) {
|
|
25
23
|
return apiRequest('POST', '/tools/context_health', { text });
|
|
@@ -78,20 +76,7 @@ const LABS_TOOLS = [
|
|
|
78
76
|
cost: 0.10,
|
|
79
77
|
tier: 'pro'
|
|
80
78
|
},
|
|
81
|
-
|
|
82
|
-
name: 'bcalc',
|
|
83
|
-
description: 'Mathematical discovery engine. $0.15',
|
|
84
|
-
inputSchema: {
|
|
85
|
-
type: 'object',
|
|
86
|
-
properties: {
|
|
87
|
-
expression: { type: 'string', description: 'Math expression or conjecture' },
|
|
88
|
-
mode: { type: 'string', enum: ['explore', 'conjecture', 'connect'], default: 'explore' }
|
|
89
|
-
},
|
|
90
|
-
required: ['expression']
|
|
91
|
-
},
|
|
92
|
-
cost: 0.15,
|
|
93
|
-
tier: 'pro'
|
|
94
|
-
},
|
|
79
|
+
|
|
95
80
|
{
|
|
96
81
|
name: 'context_health',
|
|
97
82
|
description: 'Token zone, density, redundancy analysis. $0.05',
|
|
@@ -156,8 +141,7 @@ async function handleTool(name, args) {
|
|
|
156
141
|
return await mindOpener(args.problem);
|
|
157
142
|
case 'idea_fold':
|
|
158
143
|
return await ideaFold(args.claim);
|
|
159
|
-
|
|
160
|
-
return await bcalc(args.expression, args.mode);
|
|
144
|
+
|
|
161
145
|
case 'context_health':
|
|
162
146
|
return await contextHealth(args.text);
|
|
163
147
|
case 'context_compress':
|
|
@@ -180,7 +164,7 @@ module.exports = {
|
|
|
180
164
|
genius,
|
|
181
165
|
mindOpener,
|
|
182
166
|
ideaFold,
|
|
183
|
-
|
|
167
|
+
|
|
184
168
|
contextHealth,
|
|
185
169
|
contextCompress,
|
|
186
170
|
contextExtract,
|
package/lib/packs/labs_plus.js
CHANGED
|
@@ -9,6 +9,10 @@ async function geniusPlus(problem) {
|
|
|
9
9
|
return apiRequest('POST', '/tools/genius_plus', { problem });
|
|
10
10
|
}
|
|
11
11
|
|
|
12
|
+
async function bcalc(expression, mode = 'explore') {
|
|
13
|
+
return apiRequest('POST', '/tools/bcalc', { expression, mode });
|
|
14
|
+
}
|
|
15
|
+
|
|
12
16
|
async function bcalcWhy(expression) {
|
|
13
17
|
return apiRequest('POST', '/tools/bcalc_why', { expression });
|
|
14
18
|
}
|
|
@@ -50,6 +54,20 @@ async function handoff(project, context) {
|
|
|
50
54
|
}
|
|
51
55
|
|
|
52
56
|
const LABS_PLUS_TOOLS = [
|
|
57
|
+
{
|
|
58
|
+
name: 'bcalc',
|
|
59
|
+
description: 'Mathematical discovery engine. $0.15',
|
|
60
|
+
inputSchema: {
|
|
61
|
+
type: 'object',
|
|
62
|
+
properties: {
|
|
63
|
+
expression: { type: 'string', description: 'Math expression or conjecture' },
|
|
64
|
+
mode: { type: 'string', enum: ['explore', 'conjecture', 'connect'], default: 'explore' }
|
|
65
|
+
},
|
|
66
|
+
required: ['expression']
|
|
67
|
+
},
|
|
68
|
+
cost: 0.15,
|
|
69
|
+
tier: 'enterprise'
|
|
70
|
+
},
|
|
53
71
|
{
|
|
54
72
|
name: 'genius_plus',
|
|
55
73
|
description: 'Self-improving code gen. $0.65. Learns from errors.',
|
|
@@ -199,6 +217,8 @@ const LABS_PLUS_TOOLS = [
|
|
|
199
217
|
async function handleTool(name, args) {
|
|
200
218
|
try {
|
|
201
219
|
switch (name) {
|
|
220
|
+
case 'bcalc':
|
|
221
|
+
return await bcalc(args.expression, args.mode);
|
|
202
222
|
case 'genius_plus':
|
|
203
223
|
return await geniusPlus(args.problem);
|
|
204
224
|
case 'bcalc_why':
|
|
@@ -232,6 +252,7 @@ async function handleTool(name, args) {
|
|
|
232
252
|
module.exports = {
|
|
233
253
|
LABS_PLUS_TOOLS,
|
|
234
254
|
handleTool,
|
|
255
|
+
bcalc,
|
|
235
256
|
geniusPlus,
|
|
236
257
|
bcalcWhy,
|
|
237
258
|
discoveryCollision,
|