Autonomous Agent Harness logo

Autonomous Agent Harness

Community
Fmarzochi
autonomous-agent-harness

Transform Claude Code into a fully autonomous agent system with persistent memory, scheduled operations, computer use, and task queuing. Replaces standalone agent frameworks (Hermes, AutoGPT) by leveraging Claude Code's native crons, dispatch, MCP tools, and memory. Use when the user wants continuous autonomous operation, scheduled tasks, or a self-directing agent loop.

Overview

PublisherFmarzochi
RepositoryEGC
Skill nameautonomous-agent-harness
Stars
68
Forks
49
Bundled files
Instructions only
LicenseApache-2.0
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • Self-contained

    Everything the model needs lives in the instructions — no extra files to sync.

  • Open source

    Published by Fmarzochi on GitHub. Read the source before you install it.

Installation

Install the Autonomous Agent Harness AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
    https://github.com/Fmarzochi/EGC/tree/main/skills/ai/autonomous-agent-harness
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/Fmarzochi/EGC.git /tmp/EGC
mkdir -p .claude/skills
cp -r /tmp/EGC/skills/ai/autonomous-agent-harness .claude/skills/autonomous-agent-harness
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Autonomous Agent Harness in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Autonomous Agent Harness on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Autonomous Agent Harness is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

Autonomous Agent Harness

Turn Claude Code into a persistent, self-directing agent system using only native features and MCP servers.

Consent and Safety Boundaries

Autonomous operation must be explicitly requested and scoped by the user. Do not create schedules, dispatch remote agents, write persistent memory, use computer control, post externally, modify third-party resources, or act on private communications unless the user has approved that capability and the target workspace for the current setup.

Prefer dry-run plans and local queue files before enabling recurring or event-driven actions. Keep credentials, private workspace exports, personal datasets, and account-specific automations out of reusable EGC artifacts.

When to Activate

  • User wants an agent that runs continuously or on a schedule
  • Setting up automated workflows that trigger periodically
  • Building a personal AI assistant that remembers context across sessions
  • User says "run this every day", "check on this regularly", "keep monitoring"
  • Wants to replicate functionality from Hermes, AutoGPT, or similar autonomous agent frameworks
  • Needs computer use combined with scheduled execution

Architecture

┌──────────────────────────────────────────────────────────────┐
│                    AI coding tool runtime                     │
│                                                              │
│  ┌──────────┐  ┌──────────┐  ┌──────────┐  ┌─────────────┐ │
│  │  Crons   │  │ Dispatch │  │ Memory   │  │ Computer    │ │
│  │ Schedule │  │ Remote   │  │ Store    │  │ Use         │ │
│  │ Tasks    │  │ Agents   │  │          │  │             │ │
│  └────┬─────┘  └────┬─────┘  └────┬─────┘  └──────┬──────┘ │
│       │              │             │                │        │
│       ▼              ▼             ▼                ▼        │
│  ┌──────────────────────────────────────────────────────┐    │
│  │              EGC Skill + Agent Layer                  │    │
│  │                                                      │    │
│  │  skills/     agents/     commands/     hooks/        │    │
│  └──────────────────────────────────────────────────────┘    │
│       │              │             │                │        │
│       ▼              ▼             ▼                ▼        │
│  ┌──────────────────────────────────────────────────────┐    │
│  │              MCP Server Layer                        │    │
│  │                                                      │    │
│  │  memory    github    exa    supabase    browser-use  │    │
│  └──────────────────────────────────────────────────────┘    │
└──────────────────────────────────────────────────────────────┘

Core Components

1. Persistent Memory

Use Claude Code's built-in memory system enhanced with MCP memory server for structured data.

Built-in memory (~/.gemini/projects/*/memory/):

  • User preferences, feedback, project context
  • Stored as markdown files with frontmatter
  • Automatically loaded at session start

MCP memory server (structured knowledge graph):

  • Entities, relations, observations
  • Queryable graph structure
  • Cross-session persistence

Memory patterns:

# Short-term: current session context
Use TodoWrite for in-session task tracking

# Medium-term: project memory files
Write to ~/.gemini/projects/*/memory/ for cross-session recall

# Long-term: MCP knowledge graph
Use mcp__memory__create_entities for permanent structured data
Use mcp__memory__create_relations for relationship mapping
Use mcp__memory__add_observations for new facts about known entities

2. Scheduled Operations (Crons)

Use Claude Code's scheduled tasks to create recurring agent operations.

Setting up a cron:

# Via MCP tool
mcp__scheduled-tasks__create_scheduled_task({
  name: "daily-pr-review",
  schedule: "0 9 * * 1-5",  # 9 AM weekdays
  prompt: "Review all open PRs in Fmarzochi/EGC. For each: check CI status, review changes, flag issues. Post summary to memory.",
  project_dir: "/path/to/repo"
})

# Via egc -p (programmatic mode)
echo "Review open PRs and summarize" | egc -p --project /path/to/repo

Useful cron patterns:

PatternScheduleUse Case
Daily standup0 9 * * 1-5Review PRs, issues, deploy status
Weekly review0 10 * * 1Code quality metrics, test coverage
Hourly monitor0 * * * *Production health, error rate checks
Nightly build0 2 * * *Run full test suite, security scan
Pre-meeting*/30 * * * *Prepare context for upcoming meetings

3. Dispatch / Remote Agents

Trigger Claude Code agents remotely for event-driven workflows.

Dispatch patterns:

bash
# Trigger from CI/CD
curl -X POST "https://api.anthropic.com/dispatch" \
  -H "Authorization: Bearer $ANTHROPIC_API_KEY" \
  -d '{"prompt": "Build failed on main. Diagnose and fix.", "project": "/repo"}'

# Trigger from webhook
# GitHub webhook → dispatch → Gemini agent → fix → PR

# Trigger from another agent
egc -p "Analyze the output of the security scan and create issues for findings"

4. Computer Use

Leverage Gemini's computer-use MCP for physical world interaction.

Capabilities:

  • Browser automation (navigate, click, fill forms, screenshot)
  • Desktop control (open apps, type, mouse control)
  • File system operations beyond CLI

Use cases within the harness:

  • Automated testing of web UIs
  • Form filling and data entry
  • Screenshot-based monitoring
  • Multi-app workflows

5. Task Queue

Manage a persistent queue of tasks that survive session boundaries.

Implementation:

# Task persistence via memory
Write task queue to ~/.gemini/projects/*/memory/task-queue.md

# Task format
---
name: task-queue
type: project
description: Persistent task queue for autonomous operation
---

## Active Tasks
- [ ] PR #123: Review and approve if CI green
- [ ] Monitor deploy: check /health every 30 min for 2 hours
- [ ] Research: Find 5 leads in AI tooling space

## Completed
- [x] Daily standup: reviewed 3 PRs, 2 issues

Replacing Hermes

Hermes ComponentEGC EquivalentHow
Gateway/RouterClaude Code dispatch + cronsScheduled tasks trigger agent sessions
Memory SystemGemini memory + MCP memory serverBuilt-in persistence + knowledge graph
Tool RegistryMCP serversDynamically loaded tool providers
OrchestrationEGC skills + agentsSkill definitions direct agent behavior
Computer Usecomputer-use MCPNative browser and desktop control
Context ManagerSession management + memoryEGC 2.0 session lifecycle
Task QueueMemory-persisted task listTodoWrite + memory files

Setup Guide

Step 1: Configure MCP Servers

Ensure these are in ~/.gemini.json:

json
{
  "mcpServers": {
    "memory": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-memory"]
    },
    "scheduled-tasks": {
      "command": "<the scheduled-tasks server you verified and installed>"
    },
    "computer-use": {
      "command": "<the computer-use server you verified and installed>"
    }
  }
}

The memory entry names a published package. The scheduled-tasks and computer-use entries are placeholders: no first-party package exists for them at the time of writing, so point each at a server you have audited and installed yourself (the tool names used below, mcp__scheduled-tasks__* and the computer-use tools, are whatever that server exposes). Only register servers you have verified on the registry you install from (npm view <name> shows the publisher and the versions): a name that looks plausible but is not published is the shape of a slopsquatting attack, and the day someone registers it, npx -y runs their code.

Step 2: Create Base Crons

bash
# Daily morning briefing
egc -p "Create a scheduled task: every weekday at 9am, review my GitHub notifications, open PRs, and calendar. Write a morning briefing to memory."

# Continuous learning
egc -p "Create a scheduled task: every Sunday at 8pm, extract patterns from this week's sessions and update the learned skills."

Step 3: Initialize Memory Graph

bash
# Bootstrap your identity and context
egc -p "Create memory entities for: me (user profile), my projects, my key contacts. Add observations about current priorities."

Step 4: Enable Computer Use (Optional)

Grant computer-use MCP the necessary permissions for browser and desktop control.

Example Workflows

Autonomous PR Reviewer

Cron: every 30 min during work hours
1. Check for new PRs on watched repos
2. For each new PR:
   - Pull branch locally
   - Run tests
   - Review changes with code-reviewer agent
   - Post review comments via GitHub MCP
3. Update memory with review status

Personal Research Agent

Cron: daily at 6 AM
1. Check saved search queries in memory
2. Run Exa searches for each query
3. Summarize new findings
4. Compare against yesterday's results
5. Write digest to memory
6. Flag high-priority items for morning review

Meeting Prep Agent

Trigger: 30 min before each calendar event
1. Read calendar event details
2. Search memory for context on attendees
3. Pull recent email/Slack threads with attendees
4. Prepare talking points and agenda suggestions
5. Write prep doc to memory

Constraints

  • Cron tasks run in isolated sessions: they don't share context with interactive sessions unless through memory.
  • Computer use requires explicit permission grants. Don't assume access.
  • Remote dispatch may have rate limits. Design crons with appropriate intervals.
  • Memory files should be kept concise. Archive old data rather than letting files grow unbounded.
  • Always verify that scheduled tasks completed successfully. Add error handling to cron prompts.

Frequently asked questions

What does the Autonomous Agent Harness AI skill do?

Transform Claude Code into a fully autonomous agent system with persistent memory, scheduled operations, computer use, and task queuing. Replaces standalone agent frameworks (Hermes, AutoGPT) by leveraging Claude Code's native crons, dispatch, MCP tools, and memory. Use when the user wants continuous autonomous operation, scheduled tasks, or a self-directing agent loop.

Why use Autonomous Agent Harness on TypingMind?

Because you install it once and use it with any model. Autonomous Agent Harness is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Autonomous Agent Harness in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/Fmarzochi/EGC/tree/main/skills/ai/autonomous-agent-harness. TypingMind reads its SKILL.md and installs it as a skill you can enable per chat.

Which AI models can use Autonomous Agent Harness?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Autonomous Agent Harness?

As many as you like. As long as a model supports skills, you can use Autonomous Agent Harness with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Autonomous Agent Harness AI skill free?

Yes. It is published on GitHub by Fmarzochi under the Apache-2.0 license. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇