Orchestrator that runs MindsEye prompts from a Google Sheets ledger through Gemini / Google AI and logs results back into the same ledger.
This repo is designed to plug into:
mindseye-google-ledger(Sheet:nodes+runs)- Future repos: Workspace automation, Devlog, Analytics, Workflows
The orchestrator:
- Reads nodes from the
nodessheet (Prompt Evolution Tree). - Selects one or more nodes to run (by
node_id,status,prompt_type, etc.). - Sends a constructed prompt to Gemini.
- Writes a run record into the
runssheet.
- Node.js 18+
- A Google Sheets ledger already set up:
nodestab with the columns defined inmindseye-google-ledger/schema/ledger_columns.mdrunstab with columns for run logging
- A Google service account with access to the ledger Sheet
- A Gemini / Google AI API key
You can configure the orchestrator via:
- Environment variables (recommended), or
config/config.json(based onconfig/config.example.json)
LEDGER_SHEET_ID— same as inmindseye-google-ledgerLEDGER_NODES_RANGE— e.g.nodes!A:ILEDGER_RUNS_RANGE— e.g.runs!A:IGEMINI_MODEL_ID— e.g.gemini-1.5-pro
For Google Sheets API (service account):
GOOGLE_CLIENT_EMAILGOOGLE_PRIVATE_KEY(remember to replace\nwith real newlines in env)GOOGLE_PROJECT_ID(optional but recommended for clarity)
For Gemini (via @google/generative-ai):
GEMINI_API_KEY
src/types.ts— SharedNodeandRuninterfacessrc/config.ts— Loads configuration from env / JSONsrc/sheets_client.ts— Google Sheets read/write clientsrc/gemini_client.ts— Gemini client wrappersrc/runner.ts— Core orchestration logicsrc/index.ts— CLI entrypointscripts/run_node.ts— Convenience script to run a single node from CLI
Install dependencies:
npm install
