memoryblock 0.0.1 → 0.1.1-beta

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 (116) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +221 -0
  3. package/bin/mblk.js +6 -0
  4. package/dist/bin/mblk.d.ts +3 -0
  5. package/dist/bin/mblk.d.ts.map +1 -0
  6. package/dist/bin/mblk.js +339 -0
  7. package/dist/bin/mblk.js.map +1 -0
  8. package/dist/cli/commands/create.d.ts +2 -0
  9. package/dist/cli/commands/create.d.ts.map +1 -0
  10. package/dist/cli/commands/create.js +48 -0
  11. package/dist/cli/commands/create.js.map +1 -0
  12. package/dist/cli/commands/delete.d.ts +5 -0
  13. package/dist/cli/commands/delete.d.ts.map +1 -0
  14. package/dist/cli/commands/delete.js +147 -0
  15. package/dist/cli/commands/delete.js.map +1 -0
  16. package/dist/cli/commands/init.d.ts +9 -0
  17. package/dist/cli/commands/init.d.ts.map +1 -0
  18. package/dist/cli/commands/init.js +209 -0
  19. package/dist/cli/commands/init.js.map +1 -0
  20. package/dist/cli/commands/permissions.d.ts +13 -0
  21. package/dist/cli/commands/permissions.d.ts.map +1 -0
  22. package/dist/cli/commands/permissions.js +60 -0
  23. package/dist/cli/commands/permissions.js.map +1 -0
  24. package/dist/cli/commands/plugin-settings.d.ts +6 -0
  25. package/dist/cli/commands/plugin-settings.d.ts.map +1 -0
  26. package/dist/cli/commands/plugin-settings.js +118 -0
  27. package/dist/cli/commands/plugin-settings.js.map +1 -0
  28. package/dist/cli/commands/plugins.d.ts +3 -0
  29. package/dist/cli/commands/plugins.d.ts.map +1 -0
  30. package/dist/cli/commands/plugins.js +83 -0
  31. package/dist/cli/commands/plugins.js.map +1 -0
  32. package/dist/cli/commands/reset.d.ts +8 -0
  33. package/dist/cli/commands/reset.d.ts.map +1 -0
  34. package/dist/cli/commands/reset.js +96 -0
  35. package/dist/cli/commands/reset.js.map +1 -0
  36. package/dist/cli/commands/server.d.ts +25 -0
  37. package/dist/cli/commands/server.d.ts.map +1 -0
  38. package/dist/cli/commands/server.js +295 -0
  39. package/dist/cli/commands/server.js.map +1 -0
  40. package/dist/cli/commands/service.d.ts +18 -0
  41. package/dist/cli/commands/service.d.ts.map +1 -0
  42. package/dist/cli/commands/service.js +309 -0
  43. package/dist/cli/commands/service.js.map +1 -0
  44. package/dist/cli/commands/start.d.ts +11 -0
  45. package/dist/cli/commands/start.d.ts.map +1 -0
  46. package/dist/cli/commands/start.js +801 -0
  47. package/dist/cli/commands/start.js.map +1 -0
  48. package/dist/cli/commands/status.d.ts +2 -0
  49. package/dist/cli/commands/status.d.ts.map +1 -0
  50. package/dist/cli/commands/status.js +78 -0
  51. package/dist/cli/commands/status.js.map +1 -0
  52. package/dist/cli/commands/stop.d.ts +9 -0
  53. package/dist/cli/commands/stop.d.ts.map +1 -0
  54. package/dist/cli/commands/stop.js +83 -0
  55. package/dist/cli/commands/stop.js.map +1 -0
  56. package/dist/cli/commands/web.d.ts +5 -0
  57. package/dist/cli/commands/web.d.ts.map +1 -0
  58. package/dist/cli/commands/web.js +63 -0
  59. package/dist/cli/commands/web.js.map +1 -0
  60. package/dist/cli/constants.d.ts +38 -0
  61. package/dist/cli/constants.d.ts.map +1 -0
  62. package/dist/cli/constants.js +80 -0
  63. package/dist/cli/constants.js.map +1 -0
  64. package/dist/cli/logger.d.ts +12 -0
  65. package/dist/cli/logger.d.ts.map +1 -0
  66. package/dist/cli/logger.js +40 -0
  67. package/dist/cli/logger.js.map +1 -0
  68. package/dist/engine/agent.d.ts +15 -0
  69. package/dist/engine/agent.d.ts.map +1 -0
  70. package/dist/engine/agent.js +19 -0
  71. package/dist/engine/agent.js.map +1 -0
  72. package/dist/engine/conversation-log.d.ts +35 -0
  73. package/dist/engine/conversation-log.d.ts.map +1 -0
  74. package/dist/engine/conversation-log.js +83 -0
  75. package/dist/engine/conversation-log.js.map +1 -0
  76. package/dist/engine/cost-tracker.d.ts +52 -0
  77. package/dist/engine/cost-tracker.d.ts.map +1 -0
  78. package/dist/engine/cost-tracker.js +110 -0
  79. package/dist/engine/cost-tracker.js.map +1 -0
  80. package/dist/engine/gatekeeper.d.ts +20 -0
  81. package/dist/engine/gatekeeper.d.ts.map +1 -0
  82. package/dist/engine/gatekeeper.js +43 -0
  83. package/dist/engine/gatekeeper.js.map +1 -0
  84. package/dist/engine/memory.d.ts +28 -0
  85. package/dist/engine/memory.d.ts.map +1 -0
  86. package/dist/engine/memory.js +69 -0
  87. package/dist/engine/memory.js.map +1 -0
  88. package/dist/engine/monitor.d.ts +81 -0
  89. package/dist/engine/monitor.d.ts.map +1 -0
  90. package/dist/engine/monitor.js +610 -0
  91. package/dist/engine/monitor.js.map +1 -0
  92. package/dist/engine/prompts.d.ts +31 -0
  93. package/dist/engine/prompts.d.ts.map +1 -0
  94. package/dist/engine/prompts.js +93 -0
  95. package/dist/engine/prompts.js.map +1 -0
  96. package/dist/index.d.ts +12 -0
  97. package/dist/index.d.ts.map +1 -0
  98. package/dist/index.js +15 -0
  99. package/dist/index.js.map +1 -0
  100. package/dist/schemas.d.ts +544 -0
  101. package/dist/schemas.d.ts.map +1 -0
  102. package/dist/schemas.js +111 -0
  103. package/dist/schemas.js.map +1 -0
  104. package/dist/types.d.ts +188 -0
  105. package/dist/types.d.ts.map +1 -0
  106. package/dist/types.js +2 -0
  107. package/dist/types.js.map +1 -0
  108. package/dist/utils/config.d.ts +24 -0
  109. package/dist/utils/config.d.ts.map +1 -0
  110. package/dist/utils/config.js +86 -0
  111. package/dist/utils/config.js.map +1 -0
  112. package/dist/utils/fs.d.ts +18 -0
  113. package/dist/utils/fs.d.ts.map +1 -0
  114. package/dist/utils/fs.js +65 -0
  115. package/dist/utils/fs.js.map +1 -0
  116. package/package.json +78 -4
@@ -0,0 +1 @@
1
+ {"version":3,"file":"start.js","sourceRoot":"","sources":["../../../src/cli/commands/start.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare function statusCommand(): Promise<void>;
2
+ //# sourceMappingURL=status.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/status.ts"],"names":[],"mappings":"AAkBA,wBAAsB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAuEnD"}
@@ -0,0 +1,78 @@
1
+ import { promises as fsp } from 'node:fs';
2
+ import { join } from 'node:path';
3
+ import chalk from 'chalk';
4
+ import { loadGlobalConfig, resolveBlocksDir, loadPulseState, loadBlockConfig, isInitialized, } from '../../utils/config.js';
5
+ import { pathExists } from '../../utils/fs.js';
6
+ import { log } from '../logger.js';
7
+ import { t } from '@memoryblock/locale';
8
+ const STATUS_ICON = {
9
+ SLEEPING: chalk.gray('💤'),
10
+ ACTIVE: chalk.green('🟢'),
11
+ BUSY: chalk.yellow('🔶'),
12
+ ERROR: chalk.red('🔴'),
13
+ };
14
+ export async function statusCommand() {
15
+ if (!(await isInitialized())) {
16
+ log.error(t.general.notInitialized);
17
+ process.exit(1);
18
+ }
19
+ const globalConfig = await loadGlobalConfig();
20
+ const blocksDir = resolveBlocksDir(globalConfig);
21
+ if (!(await pathExists(blocksDir))) {
22
+ log.info(t.general.noBlocksDir);
23
+ return;
24
+ }
25
+ const entries = await fsp.readdir(blocksDir, { withFileTypes: true });
26
+ const blocks = entries.filter((e) => e.isDirectory() && !e.name.startsWith('_') && !e.name.startsWith('.'));
27
+ log.brand(`Status — ${blocks.length} block(s)\n`);
28
+ if (blocks.length === 0) {
29
+ console.log(` ${chalk.dim(t.status.noActive)}`);
30
+ }
31
+ for (const block of blocks) {
32
+ const blockPath = join(blocksDir, block.name);
33
+ try {
34
+ const config = await loadBlockConfig(blockPath);
35
+ const pulse = await loadPulseState(blockPath);
36
+ const icon = STATUS_ICON[pulse.status] || '❓';
37
+ console.log(` ${icon} ${chalk.bold(config.name)} ${chalk.dim(`(${pulse.status})`)}`);
38
+ if (pulse.currentTask) {
39
+ console.log(` ${chalk.dim('Task:')} ${pulse.currentTask}`);
40
+ }
41
+ if (pulse.lastRun) {
42
+ console.log(` ${chalk.dim('Last:')} ${pulse.lastRun}`);
43
+ }
44
+ if (pulse.error) {
45
+ console.log(` ${chalk.red('Error:')} ${pulse.error}`);
46
+ }
47
+ }
48
+ catch {
49
+ console.log(` ❓ ${chalk.bold(block.name)} ${chalk.dim(`(${t.status.invalidConfig})`)}`);
50
+ }
51
+ }
52
+ // Show archived blocks
53
+ const archiveDir = join(blocksDir, '_archive');
54
+ if (await pathExists(archiveDir)) {
55
+ try {
56
+ const archiveEntries = await fsp.readdir(archiveDir, { withFileTypes: true });
57
+ const archived = archiveEntries.filter(e => e.isDirectory());
58
+ if (archived.length > 0) {
59
+ console.log('');
60
+ console.log(` ${chalk.dim(t.status.archived(archived.length))}`);
61
+ for (const a of archived) {
62
+ // Extract block name and date from "name_2026-03-21T10-33-24-242Z"
63
+ const match = a.name.match(/^(.*?)_(\d{4}-\d{2}-\d{2})T/);
64
+ const name = match ? match[1] : a.name;
65
+ const date = match ? match[2] : '';
66
+ console.log(` ${chalk.dim('·')} ${chalk.dim(name)}${date ? chalk.dim(` (${date})`) : ''}`);
67
+ }
68
+ console.log('');
69
+ console.log(` ${chalk.dim(t.status.restoreHint)}`);
70
+ }
71
+ }
72
+ catch {
73
+ // Archive dir exists but can't be read — skip
74
+ }
75
+ }
76
+ console.log('');
77
+ }
78
+ //# sourceMappingURL=status.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"status.js","sourceRoot":"","sources":["../../../src/cli/commands/status.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Stop a running block monitor.
3
+ * Updates pulse state to SLEEPING.
4
+ * In the MVP foreground model, this is mainly used for cleanup.
5
+ */
6
+ export declare function stopCommand(blockName?: string, options?: {
7
+ preserveEnabled?: boolean;
8
+ }): Promise<void>;
9
+ //# sourceMappingURL=stop.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stop.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/stop.ts"],"names":[],"mappings":"AASA;;;;GAIG;AACH,wBAAsB,WAAW,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;IAAE,eAAe,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAyB5G"}
@@ -0,0 +1,83 @@
1
+ import { loadGlobalConfig, resolveBlocksDir, resolveBlockPath, savePulseState, loadPulseState, loadBlockConfig, saveBlockConfig } from '../../utils/config.js';
2
+ import { pathExists } from '../../utils/fs.js';
3
+ import { log } from '../logger.js';
4
+ import { promises as fsp } from 'node:fs';
5
+ import { join } from 'node:path';
6
+ const DAEMON_PKG = '@memoryblock/daemon';
7
+ /**
8
+ * Stop a running block monitor.
9
+ * Updates pulse state to SLEEPING.
10
+ * In the MVP foreground model, this is mainly used for cleanup.
11
+ */
12
+ export async function stopCommand(blockName, options) {
13
+ const globalConfig = await loadGlobalConfig();
14
+ const blocksDir = resolveBlocksDir(globalConfig);
15
+ if (!await pathExists(blocksDir)) {
16
+ log.warn('No blocks directory found. Nothing to stop.');
17
+ return;
18
+ }
19
+ if (blockName) {
20
+ await stopBlock(globalConfig, blockName, options);
21
+ }
22
+ else {
23
+ log.brand('Stopping all blocks...\n');
24
+ const entries = await fsp.readdir(blocksDir, { withFileTypes: true });
25
+ let stopped = 0;
26
+ for (const entry of entries) {
27
+ if (entry.isDirectory()) {
28
+ const didStop = await stopBlock(globalConfig, entry.name, options);
29
+ if (didStop)
30
+ stopped++;
31
+ }
32
+ }
33
+ if (stopped === 0) {
34
+ log.dim(' No active blocks to stop.');
35
+ }
36
+ }
37
+ }
38
+ async function stopBlock(globalConfig, name, options) {
39
+ const blockPath = resolveBlockPath(globalConfig, name);
40
+ if (!await pathExists(join(blockPath, 'pulse.json'))) {
41
+ log.warn(`Block "${name}" not found.`);
42
+ return false;
43
+ }
44
+ const pulse = await loadPulseState(blockPath);
45
+ let daemonKilled = false;
46
+ try {
47
+ const daemon = await import(DAEMON_PKG);
48
+ daemonKilled = await daemon.killDaemon(blockPath);
49
+ }
50
+ catch {
51
+ // Daemon package not found or error parsing pid
52
+ }
53
+ if (pulse.status === 'SLEEPING' && !daemonKilled) {
54
+ log.dim(` ${name}: already sleeping`);
55
+ return false;
56
+ }
57
+ await savePulseState(blockPath, {
58
+ status: 'SLEEPING',
59
+ lastRun: new Date().toISOString(),
60
+ nextWakeUp: null,
61
+ currentTask: null,
62
+ error: null,
63
+ });
64
+ // Persist disabled state across reboots (unless preserveEnabled is set)
65
+ if (!options?.preserveEnabled) {
66
+ try {
67
+ const blockConfig = await loadBlockConfig(blockPath);
68
+ if (blockConfig.enabled !== false) {
69
+ blockConfig.enabled = false;
70
+ await saveBlockConfig(blockPath, blockConfig);
71
+ }
72
+ }
73
+ catch { /* config read failure is non-critical */ }
74
+ }
75
+ if (daemonKilled) {
76
+ log.success(` ${name}: stopped (daemon process killed)`);
77
+ }
78
+ else {
79
+ log.success(` ${name}: stopped`);
80
+ }
81
+ return true;
82
+ }
83
+ //# sourceMappingURL=stop.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stop.js","sourceRoot":"","sources":["../../../src/cli/commands/stop.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ export declare function webCommand(options?: {
2
+ port?: string;
3
+ newToken?: boolean;
4
+ }): Promise<void>;
5
+ //# sourceMappingURL=web.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"web.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/web.ts"],"names":[],"mappings":"AAQA,wBAAsB,UAAU,CAAC,OAAO,CAAC,EAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAiE/F"}
@@ -0,0 +1,63 @@
1
+ import { isInitialized, } from '../../utils/config.js';
2
+ import { log } from '../logger.js';
3
+ import { DEFAULT_PORT } from '../constants.js';
4
+ const API_PKG = '@memoryblock/api';
5
+ export async function webCommand(options) {
6
+ if (!(await isInitialized())) {
7
+ log.error('Not initialized. Run `mblk init` first.');
8
+ process.exit(1);
9
+ }
10
+ const port = parseInt(options?.port || DEFAULT_PORT, 10);
11
+ let api;
12
+ try {
13
+ api = await import(API_PKG);
14
+ }
15
+ catch (err) {
16
+ log.error(`Failed to load API package: ${err.message}`);
17
+ process.exit(1);
18
+ }
19
+ // Determine workspace path for token persistence
20
+ const workspacePath = process.cwd();
21
+ // Generate or reuse auth token
22
+ const authToken = await api.generateAuthToken(workspacePath, options?.newToken);
23
+ log.brand('web\n');
24
+ log.dim(` http://localhost:${port}`);
25
+ log.dim(` token: ${authToken}`);
26
+ console.log('');
27
+ // Resolve web UI static files path
28
+ let webRoot;
29
+ try {
30
+ const { createRequire } = await import('node:module');
31
+ const require = createRequire(import.meta.url);
32
+ const webPkg = require.resolve('@memoryblock/web/package.json');
33
+ const { dirname, join } = await import('node:path');
34
+ webRoot = join(dirname(webPkg), 'public');
35
+ }
36
+ catch {
37
+ log.warn('Web UI package not found. API-only mode.');
38
+ }
39
+ const server = new api.ApiServer({
40
+ port,
41
+ authToken,
42
+ workspacePath,
43
+ webRoot,
44
+ });
45
+ const shutdown = async () => {
46
+ log.system('web', 'shutting down...');
47
+ await server.stop();
48
+ process.exit(0);
49
+ };
50
+ process.on('SIGINT', shutdown);
51
+ process.on('SIGTERM', shutdown);
52
+ try {
53
+ await server.start();
54
+ log.dim(' api server running. ctrl+c to stop.');
55
+ }
56
+ catch (err) {
57
+ log.error(`API server failed: ${err.message}`);
58
+ process.exit(1);
59
+ }
60
+ // Keep alive
61
+ await new Promise(() => { });
62
+ }
63
+ //# sourceMappingURL=web.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"web.js","sourceRoot":"","sources":["../../../src/cli/commands/web.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,38 @@
1
+ /**
2
+ * Shared constants for the CLI commands.
3
+ * Single source of truth — imported by init.ts, start.ts, and mblk.ts.
4
+ */
5
+ export declare const DEFAULT_PORT = "8420";
6
+ export declare const PROVIDERS: Array<{
7
+ value: string;
8
+ label: string;
9
+ hint: string;
10
+ }>;
11
+ export declare const CHANNELS: Array<{
12
+ value: string;
13
+ label: string;
14
+ hint: string;
15
+ }>;
16
+ export declare const PLUGINS: Array<{
17
+ value: string;
18
+ label: string;
19
+ hint: string;
20
+ }>;
21
+ export declare const PROVIDER_AUTH: Record<string, {
22
+ fields: Array<{
23
+ key: string;
24
+ label: string;
25
+ secret: boolean;
26
+ }>;
27
+ }>;
28
+ export declare const CHANNEL_AUTH: Record<string, Array<{
29
+ key: string;
30
+ label: string;
31
+ secret: boolean;
32
+ }>>;
33
+ /**
34
+ * Read the package version from core's package.json at runtime.
35
+ * Falls back to 'dev' if the file can't be read.
36
+ */
37
+ export declare function getVersion(): Promise<string>;
38
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/cli/constants.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,eAAO,MAAM,YAAY,SAAS,CAAC;AAGnC,eAAO,MAAM,SAAS,EAMjB,KAAK,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC;AAG3D,eAAO,MAAM,QAAQ,EAMhB,KAAK,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC;AAG3D,eAAO,MAAM,OAAO,EAIf,KAAK,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC;AAG3D,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE;IACvC,MAAM,EAAE,KAAK,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;CAClE,CAoBA,CAAC;AAGF,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,OAAO,CAAA;CAAE,CAAC,CAK/F,CAAC;AAEF;;;GAGG;AACH,wBAAsB,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC,CAiBlD"}
@@ -0,0 +1,80 @@
1
+ /**
2
+ * Shared constants for the CLI commands.
3
+ * Single source of truth — imported by init.ts, start.ts, and mblk.ts.
4
+ */
5
+ // Default port for the web/API server
6
+ export const DEFAULT_PORT = '8420';
7
+ // Available LLM providers
8
+ export const PROVIDERS = [
9
+ { value: 'bedrock', label: 'AWS Bedrock', hint: 'Claude, Llama via AWS' },
10
+ { value: 'anthropic', label: 'Anthropic', hint: 'Claude API direct' },
11
+ { value: 'openai', label: 'OpenAI', hint: 'GPT-4, GPT-4o' },
12
+ { value: 'gemini', label: 'Google Gemini', hint: 'Gemini Pro, Flash' },
13
+ { value: 'ollama', label: 'Ollama (local)', hint: 'Run models locally — no API key' },
14
+ ];
15
+ // Available communication channels
16
+ export const CHANNELS = [
17
+ { value: 'cli', label: 'Terminal (CLI)', hint: 'always enabled' },
18
+ { value: 'web', label: 'Web Dashboard', hint: 'always enabled' },
19
+ { value: 'telegram', label: 'Telegram', hint: 'bot token required' },
20
+ { value: 'discord', label: 'Discord', hint: 'coming soon' },
21
+ { value: 'slack', label: 'Slack', hint: 'coming soon' },
22
+ ];
23
+ // Optional skills & plugins
24
+ export const PLUGINS = [
25
+ { value: 'web-search', label: 'Web Search', hint: 'search the web via Brave API' },
26
+ { value: 'fetch-webpage', label: 'Fetch Webpage', hint: 'extract text from URLs' },
27
+ { value: 'aws', label: 'AWS Tools', hint: 'S3, Lambda, etc.' },
28
+ ];
29
+ // Auth fields needed per provider
30
+ export const PROVIDER_AUTH = {
31
+ bedrock: {
32
+ fields: [
33
+ { key: 'accessKeyId', label: 'Access Key ID', secret: true },
34
+ { key: 'secretAccessKey', label: 'Secret Access Key', secret: true },
35
+ { key: 'region', label: 'Region', secret: false },
36
+ ],
37
+ },
38
+ anthropic: {
39
+ fields: [{ key: 'apiKey', label: 'API Key', secret: true }],
40
+ },
41
+ openai: {
42
+ fields: [{ key: 'apiKey', label: 'API Key', secret: true }],
43
+ },
44
+ gemini: {
45
+ fields: [{ key: 'apiKey', label: 'API Key', secret: true }],
46
+ },
47
+ ollama: {
48
+ fields: [], // No auth needed
49
+ },
50
+ };
51
+ // Auth fields for channels
52
+ export const CHANNEL_AUTH = {
53
+ telegram: [
54
+ { key: 'botToken', label: 'Bot Token (from @BotFather)', secret: true },
55
+ { key: 'chatId', label: 'Chat ID', secret: false },
56
+ ],
57
+ };
58
+ /**
59
+ * Read the package version from core's package.json at runtime.
60
+ * Falls back to 'dev' if the file can't be read.
61
+ */
62
+ export async function getVersion() {
63
+ try {
64
+ const { readFile } = await import('node:fs/promises');
65
+ const { join, dirname } = await import('node:path');
66
+ const { fileURLToPath } = await import('node:url');
67
+ // Navigate from this file to the core package.json
68
+ // This file is at: packages/core/src/cli/constants.ts
69
+ // package.json is at: packages/core/package.json
70
+ const thisDir = dirname(fileURLToPath(import.meta.url));
71
+ const pkgPath = join(thisDir, '..', '..', '..', 'package.json');
72
+ const raw = await readFile(pkgPath, 'utf-8');
73
+ const pkg = JSON.parse(raw);
74
+ return pkg.version || 'dev';
75
+ }
76
+ catch {
77
+ return 'dev';
78
+ }
79
+ }
80
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/cli/constants.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ export declare const log: {
2
+ banner(): void;
3
+ info(message: string): void;
4
+ success(message: string): void;
5
+ warn(message: string): void;
6
+ error(message: string): void;
7
+ system(blockName: string, message: string): void;
8
+ monitor(blockName: string, monitorName: string, message: string): void;
9
+ brand(message: string): void;
10
+ dim(message: string): void;
11
+ };
12
+ //# sourceMappingURL=logger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/cli/logger.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,GAAG;cACF,IAAI;kBASA,MAAM,GAAG,IAAI;qBAIV,MAAM,GAAG,IAAI;kBAIhB,MAAM,GAAG,IAAI;mBAIZ,MAAM,GAAG,IAAI;sBAIV,MAAM,WAAW,MAAM,GAAG,IAAI;uBAI7B,MAAM,eAAe,MAAM,WAAW,MAAM,GAAG,IAAI;mBAIvD,MAAM,GAAG,IAAI;iBAIf,MAAM,GAAG,IAAI;CAG7B,CAAC"}
@@ -0,0 +1,40 @@
1
+ import chalk from 'chalk';
2
+ const BRAND = chalk.hex('#7C3AED');
3
+ const BRAND_BG = chalk.bgHex('#7C3AED').white.bold;
4
+ const NAME = BRAND_BG(' ⬡ memoryblock ');
5
+ export const log = {
6
+ banner() {
7
+ /* eslint-disable no-irregular-whitespace */
8
+ const ascii = `
9
+ █▀▄▀█ █▀▀ █▀▄▀█ █▀█ █▀█ █▄█ █▄▄ █░░ █▀█ █▀▀ █▄▀
10
+ █░▀░█ ██▄ █░▀░█ █▄█ █▀▄ ░█░ █▄█ █▄▄ █▄█ █▄▄ █░█
11
+ `;
12
+ /* eslint-enable no-irregular-whitespace */
13
+ console.log(chalk.hex('#805AD5').bold(ascii));
14
+ },
15
+ info(message) {
16
+ console.log(`${chalk.blue('ℹ')} ${message}`);
17
+ },
18
+ success(message) {
19
+ console.log(`${chalk.green('✓')} ${message}`);
20
+ },
21
+ warn(message) {
22
+ console.log(`${chalk.yellow('⚠')} ${message}`);
23
+ },
24
+ error(message) {
25
+ console.error(`${chalk.red('✖')} ${message}`);
26
+ },
27
+ system(blockName, message) {
28
+ console.log(`${chalk.gray(`⚙️ [${blockName}]`)} ${message}`);
29
+ },
30
+ monitor(blockName, monitorName, message) {
31
+ console.log(`${BRAND(`⬡ ${monitorName}`)} ${chalk.gray(`[${blockName}]`)} ${message}`);
32
+ },
33
+ brand(message) {
34
+ console.log(`\n${NAME} ${message}`);
35
+ },
36
+ dim(message) {
37
+ console.log(chalk.dim(message));
38
+ },
39
+ };
40
+ //# sourceMappingURL=logger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/cli/logger.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;AACnC,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC;AACnD,MAAM,IAAI,GAAG,QAAQ,CAAC,iBAAiB,CAAC,CAAC;AAEzC,MAAM,CAAC,MAAM,GAAG,GAAG;IACf,MAAM;QACF,4CAA4C;QAC5C,MAAM,KAAK,GAAG;;;CAGrB,CAAC;QACM,2CAA2C;QAC3C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IAClD,CAAC;IACD,IAAI,CAAC,OAAe;QAChB,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,OAAO,EAAE,CAAC,CAAC;IACjD,CAAC;IAED,OAAO,CAAC,OAAe;QACnB,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,OAAO,EAAE,CAAC,CAAC;IAClD,CAAC;IAED,IAAI,CAAC,OAAe;QAChB,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,OAAO,EAAE,CAAC,CAAC;IACnD,CAAC;IAED,KAAK,CAAC,OAAe;QACjB,OAAO,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,OAAO,EAAE,CAAC,CAAC;IAClD,CAAC;IAED,MAAM,CAAC,SAAiB,EAAE,OAAe;QACrC,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,SAAS,GAAG,CAAC,IAAI,OAAO,EAAE,CAAC,CAAC;IAClE,CAAC;IAED,OAAO,CAAC,SAAiB,EAAE,WAAmB,EAAE,OAAe;QAC3D,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,KAAK,WAAW,EAAE,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,SAAS,GAAG,CAAC,IAAI,OAAO,EAAE,CAAC,CAAC;IAC3F,CAAC;IAED,KAAK,CAAC,OAAe;QACjB,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,IAAI,OAAO,EAAE,CAAC,CAAC;IACxC,CAAC;IAED,GAAG,CAAC,OAAe;QACf,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;IACpC,CAAC;CACJ,CAAC"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Agent: Ephemeral worker spawned by the Monitor.
3
+ * Lives in blocks/<name>/agents/<agent-id>/
4
+ * Has its own memory and tool scope.
5
+ *
6
+ * MVP: Placeholder — Monitor can function without agents.
7
+ * Full agent spawning will be implemented post-MVP.
8
+ */
9
+ export declare class Agent {
10
+ readonly id: string;
11
+ readonly role: string;
12
+ readonly agentPath: string;
13
+ constructor(id: string, role: string, agentPath: string);
14
+ }
15
+ //# sourceMappingURL=agent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/engine/agent.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,qBAAa,KAAK;IACd,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;gBAEf,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;CAK1D"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Agent: Ephemeral worker spawned by the Monitor.
3
+ * Lives in blocks/<name>/agents/<agent-id>/
4
+ * Has its own memory and tool scope.
5
+ *
6
+ * MVP: Placeholder — Monitor can function without agents.
7
+ * Full agent spawning will be implemented post-MVP.
8
+ */
9
+ export class Agent {
10
+ id;
11
+ role;
12
+ agentPath;
13
+ constructor(id, role, agentPath) {
14
+ this.id = id;
15
+ this.role = role;
16
+ this.agentPath = agentPath;
17
+ }
18
+ }
19
+ //# sourceMappingURL=agent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent.js","sourceRoot":"","sources":["../../src/engine/agent.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,MAAM,OAAO,KAAK;IACL,EAAE,CAAS;IACX,IAAI,CAAS;IACb,SAAS,CAAS;IAE3B,YAAY,EAAU,EAAE,IAAY,EAAE,SAAiB;QACnD,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC/B,CAAC;CACJ"}
@@ -0,0 +1,35 @@
1
+ /**
2
+ * Conversation logger — writes all interactions to timestamped .txt files
3
+ * in the block's logs/ directory.
4
+ *
5
+ * Log format:
6
+ * ---
7
+ * [2025-03-12 00:09:51] [CHANNEL:telegram] [FROM:user] [CHAT:5315436002]
8
+ * Hello, how are you?
9
+ *
10
+ * [2025-03-12 00:09:54] [CHANNEL:telegram] [FROM:monitor:Sam] [EMOJI:🌟]
11
+ * I'm doing well! How can I help you today?
12
+ * ---
13
+ */
14
+ export declare class ConversationLogger {
15
+ private logDir;
16
+ private logFile;
17
+ private buffer;
18
+ private flushTimer;
19
+ constructor(blockPath: string);
20
+ init(blockName: string, monitorName: string, channelType: string): Promise<void>;
21
+ logUser(content: string, meta: {
22
+ channel: string;
23
+ chatId?: string;
24
+ }): void;
25
+ logMonitor(content: string, meta: {
26
+ channel: string;
27
+ monitorName: string;
28
+ emoji?: string;
29
+ }): void;
30
+ logSystem(message: string): void;
31
+ close(): Promise<void>;
32
+ private scheduleFlush;
33
+ private flush;
34
+ }
35
+ //# sourceMappingURL=conversation-log.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"conversation-log.d.ts","sourceRoot":"","sources":["../../src/engine/conversation-log.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;GAYG;AACH,qBAAa,kBAAkB;IAC3B,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,UAAU,CAA8C;gBAEpD,SAAS,EAAE,MAAM;IAMvB,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAoBtF,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAQ1E,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAQjG,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAO1B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAO5B,OAAO,CAAC,aAAa;YAKP,KAAK;CAMtB"}