Skip to content
Merged
11 changes: 4 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -427,22 +427,19 @@ All built-in tools are defined in `src/tools/` and registered as LangChain tools
| `imageGenerate` | Generate images via FAL.ai flux/klein API. |
| `memory` | Persistent key-value memory with CRUD actions (create, read, update, delete, list). Each entry stored as `.md` in `memory/context/` with `createdDate`/`updatedDate` metadata. |
| `mixtureOfAgents` | Multi-agent orchestration via OpenRouter. Calls 4 reference prompts (factual, practical, creative, cautious) and synthesizes a consensus response. |
| `patch` | Apply a patch using 9 fuzzy matching strategies (exact, whitespace, case-insensitive, etc.). Returns unified diff. |
| `process` | Manage background processes — list, poll, wait, kill, write, pause, resume. |
| `readFile` | Read file contents with optional pagination (`offset`/`limit`). Returns `LINE_NUM|CONTENT` format. |
| `sampling` | Capture emotional moments as ephemeral memories. Rate-limited to 1 per 60 minutes. Stored with `expiresAt` frontmatter. |
| `scanAgents` | Scan for `AGENTS.md` workspace rules files in a target directory. Returns file contents or empty string. |
| `searchFiles` | Search file contents with ripgrep (native fs fallback). Supports filename and content patterns. |
| `sessionSearch` | Search past conversations by keyword query, full retrieval by conversation ID, or browse all sessions. |
| `shell` | Execute shell commands (foreground/background). Max command length 4096 chars. |
| `skillView` | View full details for a skill by name — metadata, permissions, scripts, and full SKILL.md body. |
| `skillsList` | List all discovered skills with name, description, and location from the registry catalog. |
| `textToSpeech` | Convert text to speech via OpenAI TTS (tts-1/tts-1-hd). Saves MP3 to `~/voice-memos/`. |
| `todo` | CRUD task list persisted to `memory/tools/todo.json`. Actions: read, create, update, complete, delete, list, clear. |
| `visionAnalyze` | Analyze images via OpenAI multimodal LLM. Accepts URL or base64 data URI. |
| `webExtract` | Extract readable text content from a web page URL. Supports summarization for large pages. |
| `webSearch` | Search the web via DuckDuckGo, Google, Bing, SearXNG, or Custom endpoints. |
| `writeFile` | Write content to a file, creating parent directories as needed. 500KB content cap. |

**Deep Agents tools:** Core filesystem operations (`readFile`, `writeFile`, `patch`, `searchFiles`) and task management (`todo`) are provided by [deepagentsjs](https://github.com/langchain-ai/deepagentsjs) and are not listed as madz-built-in tools.

### Skills Registry

Expand All @@ -454,8 +451,8 @@ Built-in tools are registered only when their required permissions are enabled f

| Permission Required | Tools |
| ----------------------------------- | -------------------------------------------------------------------------- |
| `filesystem:read` | `compactContext`, `readFile`, `searchFiles`, `scanAgents`, `sessionSearch`, `skillView`, `skillsList` |
| `filesystem:write` | `clarify`, `createSkill`, `memory`, `patch`, `sampling`, `todo`, `writeFile` |
| `filesystem:read` | `compactContext`, `scanAgents`, `sessionSearch`, `skillView`, `skillsList` |
| `filesystem:write` | `clarify`, `createSkill`, `memory`, `sampling` |
| `filesystem:exec` + `process:spawn` | `executeCode`, `shell` |
| `network:outbound` | `cronJob`, `imageGenerate`, `mixtureOfAgents`, `webExtract`, `webSearch` |
| `process:spawn` | `process` |
Expand Down
351 changes: 33 additions & 318 deletions prompts/CODING.md

Large diffs are not rendered by default.

410 changes: 62 additions & 348 deletions prompts/SYSTEM_PROMPT.md

Large diffs are not rendered by default.

7 changes: 4 additions & 3 deletions src/agent/deepAgents.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { createDeepAgent, CompositeBackend, createHarnessProfile, registerHarnessProfile } from "deepagents";
import { createDeepAgent, CompositeBackend } from "deepagents";
import { readFileSync } from "node:fs";
import { join } from "node:path";
import { InMemoryStore } from "@langchain/langgraph-checkpoint";
Expand Down Expand Up @@ -44,7 +44,7 @@ export async function createDeepAgentsOrchestrator(checkpointer = null) {
const model = createChatModel(providerConfig);

// Register harness profile for subagents using config-derived model identifier
const modelIdentifier = `${providerName}:${providerConfig.model}`;
/** const modelIdentifier = `${providerName}:${providerConfig.model}`;
registerHarnessProfile(
modelIdentifier,
createHarnessProfile({
Expand All @@ -53,8 +53,9 @@ export async function createDeepAgentsOrchestrator(checkpointer = null) {
//"FilesystemMiddleware",
"SummarizationMiddleware",
],
excludedTools: ["write_todos"],
}),
);
); **/

// Build tools from config — separate sets for orchestrator and subagent
const buildOptions = {
Expand Down
Loading