50c 2.15.0 → 2.16.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.
- package/lib/core/tools.js +19 -1
- package/lib/index.js +14 -11
- package/package.json +2 -2
package/lib/core/tools.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* 50c Core Tools - Always Free
|
|
3
|
-
* search, fetch, domain_check, balance
|
|
3
|
+
* search, fetch, domain_check, balance, quick_vibe
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
6
|
const https = require('https');
|
|
@@ -30,6 +30,11 @@ async function checkBalance() {
|
|
|
30
30
|
return apiRequest('GET', '/user/balance');
|
|
31
31
|
}
|
|
32
32
|
|
|
33
|
+
// Quick Vibe - 3 unconventional ideas (moved to FREE tier 2026-01-31)
|
|
34
|
+
async function quickVibe(working_on) {
|
|
35
|
+
return apiRequest('POST', '/tools/quick_vibe', { working_on });
|
|
36
|
+
}
|
|
37
|
+
|
|
33
38
|
// Tool definitions
|
|
34
39
|
const CORE_TOOLS = [
|
|
35
40
|
{
|
|
@@ -74,6 +79,17 @@ const CORE_TOOLS = [
|
|
|
74
79
|
type: 'object',
|
|
75
80
|
properties: {}
|
|
76
81
|
}
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
name: 'quick_vibe',
|
|
85
|
+
description: '3 unconventional ideas. FREE.',
|
|
86
|
+
inputSchema: {
|
|
87
|
+
type: 'object',
|
|
88
|
+
properties: {
|
|
89
|
+
working_on: { type: 'string', description: 'What you\'re working on' }
|
|
90
|
+
},
|
|
91
|
+
required: ['working_on']
|
|
92
|
+
}
|
|
77
93
|
}
|
|
78
94
|
];
|
|
79
95
|
|
|
@@ -89,6 +105,8 @@ async function handleTool(name, args) {
|
|
|
89
105
|
return await domainCheck(args.domain);
|
|
90
106
|
case 'check_balance':
|
|
91
107
|
return await checkBalance();
|
|
108
|
+
case 'quick_vibe':
|
|
109
|
+
return await quickVibe(args.working_on);
|
|
92
110
|
default:
|
|
93
111
|
return { error: `Unknown core tool: ${name}` };
|
|
94
112
|
}
|
package/lib/index.js
CHANGED
|
@@ -98,14 +98,17 @@ async function checkVersion() {
|
|
|
98
98
|
}
|
|
99
99
|
}
|
|
100
100
|
|
|
101
|
-
// Tool name mappings by pack
|
|
101
|
+
// Tool name mappings by pack (optimized per 50c genius analysis 2026-01-31)
|
|
102
|
+
// Changes: quick_vibe→FREE, compute→PRO, grabr→ENTERPRISE, cvi_loop/cvi_verify→PRO
|
|
102
103
|
const TOOL_PACKS = {
|
|
103
|
-
beacon: ['hints', 'hints_plus', 'roast', '
|
|
104
|
+
beacon: ['hints', 'hints_plus', 'roast', 'one_liner', 'name_it', 'price_it', 'ide_conversation', 'learning_stats',
|
|
104
105
|
'beacon_scan', 'beacon_compress', 'beacon_extract', 'beacon_focus', 'beacon_rank'],
|
|
105
|
-
labs: ['genius', 'mind_opener', 'idea_fold', 'agent_autopsy', 'prompt_fortress', 'context_health', 'context_compress', 'context_extract', 'context_reposition'
|
|
106
|
-
|
|
106
|
+
labs: ['genius', 'mind_opener', 'idea_fold', 'agent_autopsy', 'prompt_fortress', 'context_health', 'context_compress', 'context_extract', 'context_reposition',
|
|
107
|
+
'compute', 'cvi_loop', 'cvi_verify'],
|
|
108
|
+
labs_plus: ['bcalc', 'genius_plus', 'bcalc_why', 'discovery_collision', 'chaos_fingerprint', 'resonance', 'prime_residue', 'echo_sequence', 'conversation_diagnostic', 'handoff',
|
|
109
|
+
'grabr_scrape', 'grabr_contact', 'grabr_wayback', 'grabr_sitemap', 'grabr_batch', 'grabr_intel'],
|
|
107
110
|
prompt_engine: ['prompt_extract', 'prompt_phases', 'prompt_refine', 'prompt_expand', 'prompt_categorize'],
|
|
108
|
-
grabr: [
|
|
111
|
+
grabr: [] // Moved to labs_plus (Enterprise) - kept for backward compat
|
|
109
112
|
};
|
|
110
113
|
|
|
111
114
|
// Get all available tools based on enabled packs
|
|
@@ -145,8 +148,8 @@ async function getTools() {
|
|
|
145
148
|
async function handleTool(name, args = {}) {
|
|
146
149
|
const config = await loadConfig();
|
|
147
150
|
|
|
148
|
-
// Core tools (FREE)
|
|
149
|
-
if (['web_search', 'page_fetch', 'domain_check', 'check_balance'].includes(name)) {
|
|
151
|
+
// Core tools (FREE) - includes quick_vibe now
|
|
152
|
+
if (['web_search', 'page_fetch', 'domain_check', 'check_balance', 'quick_vibe'].includes(name)) {
|
|
150
153
|
return core.handleTool(name, args);
|
|
151
154
|
}
|
|
152
155
|
|
|
@@ -189,10 +192,10 @@ async function handleTool(name, args = {}) {
|
|
|
189
192
|
return promptEngine.handleTool(name, args);
|
|
190
193
|
}
|
|
191
194
|
|
|
192
|
-
// Grabr tools (PRO)
|
|
193
|
-
if (TOOL_PACKS.
|
|
194
|
-
if (!config.packs.
|
|
195
|
-
return { error: '
|
|
195
|
+
// Grabr tools (ENTERPRISE - moved from PRO for legal/compliance)
|
|
196
|
+
if (TOOL_PACKS.labs_plus.includes(name) && name.startsWith('grabr_')) {
|
|
197
|
+
if (!config.packs.labs_plus) {
|
|
198
|
+
return { error: 'Grabr web scraping requires Enterprise tier ($499/mo). Upgrade at sales.50c.ai/50c-enterprise/' };
|
|
196
199
|
}
|
|
197
200
|
return grabr.handleTool(name, args);
|
|
198
201
|
}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "50c",
|
|
3
|
-
"version": "2.
|
|
4
|
-
"description": "AI toolkit.
|
|
3
|
+
"version": "2.16.0",
|
|
4
|
+
"description": "AI toolkit. Tier optimization: quick_vibe→FREE, compute→PRO, grabr→ENTERPRISE, cvi_loop→PRO",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"bin": {
|
|
7
7
|
"50c": "./bin/50c.js"
|