mlx-bun library API
    Preparing search index...
    manifest: {
        contributes: readonly ["chat.tool", "chat.guidance"];
        id: "memory";
        panel: {
            developer: false;
            entry: "@mlx-bun/module-memory/panel";
            overlay: true;
            path: "/memory";
            tag: "mlx-memory-panel";
            title: "Memory";
        };
        placement: "app";
        requires: readonly ["storage", "registry"];
        routes: readonly [
            {
                id: "status";
                method: "GET";
                mount: "root";
                path: "/api/memory/status";
                response: "json";
                summary: "Wiki status and nightly schedule";
            },
            {
                id: "list";
                method: "GET";
                mount: "root";
                path: "/api/memory/list";
                response: "json";
                summary: "List articles and reference documents";
            },
            {
                id: "search";
                method: "GET";
                mount: "root";
                path: "/api/memory/search";
                response: "json";
                summary: "Search article and reference content";
            },
            {
                id: "article";
                method: "GET";
                mount: "root";
                path: "/api/memory/article";
                response: "json";
                summary: "Read a document with its article structure";
            },
            {
                id: "links";
                method: "GET";
                mount: "root";
                path: "/api/memory/links";
                response: "json";
                summary: "Read inbound and outbound article links";
            },
            {
                id: "history";
                method: "GET";
                mount: "root";
                path: "/api/memory/history";
                response: "json";
                summary: "Read an article’s Git history";
            },
            {
                id: "diff";
                method: "GET";
                mount: "root";
                path: "/api/memory/diff";
                response: "json";
                summary: "Read an article revision diff";
            },
            {
                id: "init";
                method: "POST";
                mount: "root";
                path: "/api/memory/init";
                response: "json";
                summary: "Initialize the memory wiki";
            },
            {
                id: "synthesize";
                method: "GET";
                mount: "root";
                path: "/v1/memory/synthesize";
                response: "sse";
                summary: "Run synthesis and stream progress";
            },
        ];
        storage: readonly [
            {
                key: "vault";
                kind: "directory";
                path: "wiki";
                purpose: "Markdown articles and read-only reference links";
            },
            {
                key: "skills";
                kind: "directory";
                path: "skills";
                purpose: "Bundled memory skill for chat";
            },
            {
                key: "db";
                kind: "sqlite";
                path: "db/memory.sqlite";
                purpose: "Ingest and synthesis state";
            },
        ];
        summary: "A local Markdown vault, read-only chat tools and the existing synthesis and nightly scheduling pipeline.";
        title: "Memory";
        verbs: readonly [
            {
                details: "A local, durable memory for the assistant: a wiki of Markdown articles\n(~/.mlx-bun/wiki) it reads to remember your projects, people, and history\nacross sessions. It is yours: git-tracked, editable in any tool (Obsidian\nopens it as a vault), and it never leaves the machine. Once set up, it loads\nautomatically into every `mlx-bun serve` session.\n\nSubcommands:\n init, setup Create the wiki + walk through setup (idempotent);\n offers to import an existing vault and install the\n nightly synthesis job\n status Path, article count, git + schedule state (the default)\n open, browse [article]\n Open the wiki, or a specific article, in Obsidian\n (falls back to Finder / the default Markdown app)\n list List article titles + read-only Reference docs\n search <query> Search articles from the terminal\n toc <article> Print an article's headings + anchors\n section <article> <anchor>\n Print one article section\n links <article> Show resolved outbound + inbound wikilinks\n read <article> Print an article (stem, e.g. Archie_Project)\n synthesize Run the FULL synthesis DAG now (--since, --model,\n --dry-run); also: pipeline, all\n segment | extract | route | synthesize-stage\n Run ONE decomposed stage worker (--limit N —\n segment/extract/synthesize-stage only; --convs a,b).\n Each pulls its eligible work from the DB by state, walks\n oldest-conversation-first, persists, and exits — resumable,\n and runnable as separate concurrent processes on slices.\n link Deterministic cross-linking stage: inline-link first\n mentions + rebuild ## See also (--limit N; no model)\n schedule Install the nightly launchd job (--at HH:MM [03:00])\n unschedule Remove the nightly launchd job\n\nThe read path is live: the assistant reads a wiki you set up by hand or\nimport during `memory init`. Run `mlx-bun memory open` to browse it in\nObsidian/Finder, or `mlx-bun memory open <article>` to jump to a specific\npage. Synthesis (conversations -> articles) runs the full local pipeline via\n`mlx-bun memory synthesize` (or per-stage: segment/extract/route/\nsynthesize-stage/link); the nightly job runs it on a schedule. These load the\nmemory task model on first use; --host/--port use a serving mlx-bun instead.";
                helpUsage: "Usage: mlx-bun memory [subcommand] [args] [options]";
                name: "memory";
                options: readonly [
                    {
                        name: "since";
                        summary: "synthesize: only conversations newer than this (parsed; the pipeline does not consume it yet)";
                        type: "string";
                    },
                    {
                        name: "model";
                        summary: "synthesize: synthesis model override (parsed; reserved)";
                        type: "string";
                    },
                    {
                        name: "dry-run";
                        summary: "synthesize: plan the stages only, never write the vault";
                        type: "boolean";
                    },
                    {
                        name: "limit";
                        summary: "Stage workers: cap the work processed this pass (segment, extract, synthesize-stage, link)";
                        type: "string";
                    },
                    {
                        name: "convs";
                        summary: "Stage workers: comma-separated conversation ids to restrict the pass to";
                        type: "string";
                    },
                    {
                        name: "at";
                        summary: "schedule: local wall-clock time for the nightly job, 24h HH:MM [default: 03:00]";
                        type: "string";
                    },
                    {
                        name: "host";
                        summary: "Run the model calls on a serving mlx-bun at this host instead of loading the memory task model (127.0.0.1 when only --port is given)";
                        type: "string";
                    },
                    {
                        name: "port";
                        summary: "Port of that server (8080 when only --host is given)";
                        type: "string";
                    },
                ];
                positional: readonly [
                    { name: "subcommand"; summary: "Memory action" },
                    { name: "args"; repeatable: true; summary: "Action arguments" },
                ];
                summary: "Your local AI's personal wiki: set it up, inspect it, run synthesis, schedule it";
                usage: "usage: mlx-bun memory <subcommand> [args] [options]";
            },
            {
                details: "A local, durable memory for the assistant: a wiki of Markdown articles\n(~/.mlx-bun/wiki) it reads to remember your projects, people, and history\nacross sessions. It is yours: git-tracked, editable in any tool (Obsidian\nopens it as a vault), and it never leaves the machine. Once set up, it loads\nautomatically into every `mlx-bun serve` session.\n\nSubcommands:\n init, setup Create the wiki + walk through setup (idempotent);\n offers to import an existing vault and install the\n nightly synthesis job\n status Path, article count, git + schedule state (the default)\n open, browse [article]\n Open the wiki, or a specific article, in Obsidian\n (falls back to Finder / the default Markdown app)\n list List article titles + read-only Reference docs\n search <query> Search articles from the terminal\n toc <article> Print an article's headings + anchors\n section <article> <anchor>\n Print one article section\n links <article> Show resolved outbound + inbound wikilinks\n read <article> Print an article (stem, e.g. Archie_Project)\n synthesize Run the FULL synthesis DAG now (--since, --model,\n --dry-run); also: pipeline, all\n segment | extract | route | synthesize-stage\n Run ONE decomposed stage worker (--limit N —\n segment/extract/synthesize-stage only; --convs a,b).\n Each pulls its eligible work from the DB by state, walks\n oldest-conversation-first, persists, and exits — resumable,\n and runnable as separate concurrent processes on slices.\n link Deterministic cross-linking stage: inline-link first\n mentions + rebuild ## See also (--limit N; no model)\n schedule Install the nightly launchd job (--at HH:MM [03:00])\n unschedule Remove the nightly launchd job\n\nThe read path is live: the assistant reads a wiki you set up by hand or\nimport during `memory init`. Run `mlx-bun memory open` to browse it in\nObsidian/Finder, or `mlx-bun memory open <article>` to jump to a specific\npage. Synthesis (conversations -> articles) runs the full local pipeline via\n`mlx-bun memory synthesize` (or per-stage: segment/extract/route/\nsynthesize-stage/link); the nightly job runs it on a schedule. These load the\nmemory task model on first use; --host/--port use a serving mlx-bun instead.";
                helpUsage: "Usage: mlx-bun setup [subcommand] [args] [options]";
                name: "setup";
                options: readonly [
                    {
                        name: "since";
                        summary: "synthesize: only conversations newer than this (parsed; the pipeline does not consume it yet)";
                        type: "string";
                    },
                    {
                        name: "model";
                        summary: "synthesize: synthesis model override (parsed; reserved)";
                        type: "string";
                    },
                    {
                        name: "dry-run";
                        summary: "synthesize: plan the stages only, never write the vault";
                        type: "boolean";
                    },
                    {
                        name: "limit";
                        summary: "Stage workers: cap the work processed this pass (segment, extract, synthesize-stage, link)";
                        type: "string";
                    },
                    {
                        name: "convs";
                        summary: "Stage workers: comma-separated conversation ids to restrict the pass to";
                        type: "string";
                    },
                    {
                        name: "at";
                        summary: "schedule: local wall-clock time for the nightly job, 24h HH:MM [default: 03:00]";
                        type: "string";
                    },
                    {
                        name: "host";
                        summary: "Run the model calls on a serving mlx-bun at this host instead of loading the memory task model (127.0.0.1 when only --port is given)";
                        type: "string";
                    },
                    {
                        name: "port";
                        summary: "Port of that server (8080 when only --host is given)";
                        type: "string";
                    },
                ];
                positional: readonly [
                    { name: "subcommand"; summary: "Memory action" },
                    { name: "args"; repeatable: true; summary: "Action arguments" },
                ];
                summary: "Set up your local AI's memory wiki (alias of mlx-bun memory)";
                usage: "usage: mlx-bun setup <subcommand> [args] [options]";
            },
        ];
    } = ...

    Type Declaration

    • Readonlycontributes: readonly ["chat.tool", "chat.guidance"]
    • Readonlyid: "memory"
    • Readonlypanel: {
          developer: false;
          entry: "@mlx-bun/module-memory/panel";
          overlay: true;
          path: "/memory";
          tag: "mlx-memory-panel";
          title: "Memory";
      }
    • Readonlyplacement: "app"
    • Readonlyrequires: readonly ["storage", "registry"]
    • Readonlyroutes: readonly [
          {
              id: "status";
              method: "GET";
              mount: "root";
              path: "/api/memory/status";
              response: "json";
              summary: "Wiki status and nightly schedule";
          },
          {
              id: "list";
              method: "GET";
              mount: "root";
              path: "/api/memory/list";
              response: "json";
              summary: "List articles and reference documents";
          },
          {
              id: "search";
              method: "GET";
              mount: "root";
              path: "/api/memory/search";
              response: "json";
              summary: "Search article and reference content";
          },
          {
              id: "article";
              method: "GET";
              mount: "root";
              path: "/api/memory/article";
              response: "json";
              summary: "Read a document with its article structure";
          },
          {
              id: "links";
              method: "GET";
              mount: "root";
              path: "/api/memory/links";
              response: "json";
              summary: "Read inbound and outbound article links";
          },
          {
              id: "history";
              method: "GET";
              mount: "root";
              path: "/api/memory/history";
              response: "json";
              summary: "Read an article’s Git history";
          },
          {
              id: "diff";
              method: "GET";
              mount: "root";
              path: "/api/memory/diff";
              response: "json";
              summary: "Read an article revision diff";
          },
          {
              id: "init";
              method: "POST";
              mount: "root";
              path: "/api/memory/init";
              response: "json";
              summary: "Initialize the memory wiki";
          },
          {
              id: "synthesize";
              method: "GET";
              mount: "root";
              path: "/v1/memory/synthesize";
              response: "sse";
              summary: "Run synthesis and stream progress";
          },
      ]
    • Readonlystorage: readonly [
          {
              key: "vault";
              kind: "directory";
              path: "wiki";
              purpose: "Markdown articles and read-only reference links";
          },
          {
              key: "skills";
              kind: "directory";
              path: "skills";
              purpose: "Bundled memory skill for chat";
          },
          {
              key: "db";
              kind: "sqlite";
              path: "db/memory.sqlite";
              purpose: "Ingest and synthesis state";
          },
      ]
    • Readonlysummary: "A local Markdown vault, read-only chat tools and the existing synthesis and nightly scheduling pipeline."
    • Readonlytitle: "Memory"
    • Readonlyverbs: readonly [
          {
              details: "A local, durable memory for the assistant: a wiki of Markdown articles\n(~/.mlx-bun/wiki) it reads to remember your projects, people, and history\nacross sessions. It is yours: git-tracked, editable in any tool (Obsidian\nopens it as a vault), and it never leaves the machine. Once set up, it loads\nautomatically into every `mlx-bun serve` session.\n\nSubcommands:\n init, setup Create the wiki + walk through setup (idempotent);\n offers to import an existing vault and install the\n nightly synthesis job\n status Path, article count, git + schedule state (the default)\n open, browse [article]\n Open the wiki, or a specific article, in Obsidian\n (falls back to Finder / the default Markdown app)\n list List article titles + read-only Reference docs\n search <query> Search articles from the terminal\n toc <article> Print an article's headings + anchors\n section <article> <anchor>\n Print one article section\n links <article> Show resolved outbound + inbound wikilinks\n read <article> Print an article (stem, e.g. Archie_Project)\n synthesize Run the FULL synthesis DAG now (--since, --model,\n --dry-run); also: pipeline, all\n segment | extract | route | synthesize-stage\n Run ONE decomposed stage worker (--limit N —\n segment/extract/synthesize-stage only; --convs a,b).\n Each pulls its eligible work from the DB by state, walks\n oldest-conversation-first, persists, and exits — resumable,\n and runnable as separate concurrent processes on slices.\n link Deterministic cross-linking stage: inline-link first\n mentions + rebuild ## See also (--limit N; no model)\n schedule Install the nightly launchd job (--at HH:MM [03:00])\n unschedule Remove the nightly launchd job\n\nThe read path is live: the assistant reads a wiki you set up by hand or\nimport during `memory init`. Run `mlx-bun memory open` to browse it in\nObsidian/Finder, or `mlx-bun memory open <article>` to jump to a specific\npage. Synthesis (conversations -> articles) runs the full local pipeline via\n`mlx-bun memory synthesize` (or per-stage: segment/extract/route/\nsynthesize-stage/link); the nightly job runs it on a schedule. These load the\nmemory task model on first use; --host/--port use a serving mlx-bun instead.";
              helpUsage: "Usage: mlx-bun memory [subcommand] [args] [options]";
              name: "memory";
              options: readonly [
                  {
                      name: "since";
                      summary: "synthesize: only conversations newer than this (parsed; the pipeline does not consume it yet)";
                      type: "string";
                  },
                  {
                      name: "model";
                      summary: "synthesize: synthesis model override (parsed; reserved)";
                      type: "string";
                  },
                  {
                      name: "dry-run";
                      summary: "synthesize: plan the stages only, never write the vault";
                      type: "boolean";
                  },
                  {
                      name: "limit";
                      summary: "Stage workers: cap the work processed this pass (segment, extract, synthesize-stage, link)";
                      type: "string";
                  },
                  {
                      name: "convs";
                      summary: "Stage workers: comma-separated conversation ids to restrict the pass to";
                      type: "string";
                  },
                  {
                      name: "at";
                      summary: "schedule: local wall-clock time for the nightly job, 24h HH:MM [default: 03:00]";
                      type: "string";
                  },
                  {
                      name: "host";
                      summary: "Run the model calls on a serving mlx-bun at this host instead of loading the memory task model (127.0.0.1 when only --port is given)";
                      type: "string";
                  },
                  {
                      name: "port";
                      summary: "Port of that server (8080 when only --host is given)";
                      type: "string";
                  },
              ];
              positional: readonly [
                  { name: "subcommand"; summary: "Memory action" },
                  { name: "args"; repeatable: true; summary: "Action arguments" },
              ];
              summary: "Your local AI's personal wiki: set it up, inspect it, run synthesis, schedule it";
              usage: "usage: mlx-bun memory <subcommand> [args] [options]";
          },
          {
              details: "A local, durable memory for the assistant: a wiki of Markdown articles\n(~/.mlx-bun/wiki) it reads to remember your projects, people, and history\nacross sessions. It is yours: git-tracked, editable in any tool (Obsidian\nopens it as a vault), and it never leaves the machine. Once set up, it loads\nautomatically into every `mlx-bun serve` session.\n\nSubcommands:\n init, setup Create the wiki + walk through setup (idempotent);\n offers to import an existing vault and install the\n nightly synthesis job\n status Path, article count, git + schedule state (the default)\n open, browse [article]\n Open the wiki, or a specific article, in Obsidian\n (falls back to Finder / the default Markdown app)\n list List article titles + read-only Reference docs\n search <query> Search articles from the terminal\n toc <article> Print an article's headings + anchors\n section <article> <anchor>\n Print one article section\n links <article> Show resolved outbound + inbound wikilinks\n read <article> Print an article (stem, e.g. Archie_Project)\n synthesize Run the FULL synthesis DAG now (--since, --model,\n --dry-run); also: pipeline, all\n segment | extract | route | synthesize-stage\n Run ONE decomposed stage worker (--limit N —\n segment/extract/synthesize-stage only; --convs a,b).\n Each pulls its eligible work from the DB by state, walks\n oldest-conversation-first, persists, and exits — resumable,\n and runnable as separate concurrent processes on slices.\n link Deterministic cross-linking stage: inline-link first\n mentions + rebuild ## See also (--limit N; no model)\n schedule Install the nightly launchd job (--at HH:MM [03:00])\n unschedule Remove the nightly launchd job\n\nThe read path is live: the assistant reads a wiki you set up by hand or\nimport during `memory init`. Run `mlx-bun memory open` to browse it in\nObsidian/Finder, or `mlx-bun memory open <article>` to jump to a specific\npage. Synthesis (conversations -> articles) runs the full local pipeline via\n`mlx-bun memory synthesize` (or per-stage: segment/extract/route/\nsynthesize-stage/link); the nightly job runs it on a schedule. These load the\nmemory task model on first use; --host/--port use a serving mlx-bun instead.";
              helpUsage: "Usage: mlx-bun setup [subcommand] [args] [options]";
              name: "setup";
              options: readonly [
                  {
                      name: "since";
                      summary: "synthesize: only conversations newer than this (parsed; the pipeline does not consume it yet)";
                      type: "string";
                  },
                  {
                      name: "model";
                      summary: "synthesize: synthesis model override (parsed; reserved)";
                      type: "string";
                  },
                  {
                      name: "dry-run";
                      summary: "synthesize: plan the stages only, never write the vault";
                      type: "boolean";
                  },
                  {
                      name: "limit";
                      summary: "Stage workers: cap the work processed this pass (segment, extract, synthesize-stage, link)";
                      type: "string";
                  },
                  {
                      name: "convs";
                      summary: "Stage workers: comma-separated conversation ids to restrict the pass to";
                      type: "string";
                  },
                  {
                      name: "at";
                      summary: "schedule: local wall-clock time for the nightly job, 24h HH:MM [default: 03:00]";
                      type: "string";
                  },
                  {
                      name: "host";
                      summary: "Run the model calls on a serving mlx-bun at this host instead of loading the memory task model (127.0.0.1 when only --port is given)";
                      type: "string";
                  },
                  {
                      name: "port";
                      summary: "Port of that server (8080 when only --host is given)";
                      type: "string";
                  },
              ];
              positional: readonly [
                  { name: "subcommand"; summary: "Memory action" },
                  { name: "args"; repeatable: true; summary: "Action arguments" },
              ];
              summary: "Set up your local AI's memory wiki (alias of mlx-bun memory)";
              usage: "usage: mlx-bun setup <subcommand> [args] [options]";
          },
      ]