From 30ce7d240d7b581efd0e7f1af25c63558b326652 Mon Sep 17 00:00:00 2001 From: "google-labs-jules[bot]" <161369871+google-labs-jules[bot]@users.noreply.github.com> Date: Tue, 7 Apr 2026 02:01:27 +0000 Subject: [PATCH 1/2] Remove agent-harness old context tools Co-authored-by: julwrites <18639913+julwrites@users.noreply.github.com> --- .claude/hooks/session-start.sh | 5 --- .claude/settings.json | 12 +------ .cursorrules | 15 -------- docs/security/PERMISSIONS.md | 29 --------------- scripts/hooks/session_start.py | 64 ---------------------------------- templates/task.md | 23 ------------ 6 files changed, 1 insertion(+), 147 deletions(-) delete mode 100755 .claude/hooks/session-start.sh delete mode 100644 .cursorrules delete mode 100644 docs/security/PERMISSIONS.md delete mode 100644 scripts/hooks/session_start.py delete mode 100644 templates/task.md diff --git a/.claude/hooks/session-start.sh b/.claude/hooks/session-start.sh deleted file mode 100755 index 7574fff..0000000 --- a/.claude/hooks/session-start.sh +++ /dev/null @@ -1,5 +0,0 @@ -#!/bin/bash -# Wrapper for the Python SessionStart hook -# $CLAUDE_PROJECT_DIR is provided by Claude, but we can fallback to PWD -PROJECT_DIR="${CLAUDE_PROJECT_DIR:-$(pwd)}" -python3 "$PROJECT_DIR/scripts/hooks/session_start.py" diff --git a/.claude/settings.json b/.claude/settings.json index 241121b..633512a 100644 --- a/.claude/settings.json +++ b/.claude/settings.json @@ -1,15 +1,5 @@ { "hooks": { - "SessionStart": [ - { - "matcher": ".*", - "hooks": [ - { - "type": "command", - "command": "$CLAUDE_PROJECT_DIR/.claude/hooks/session-start.sh" - } - ] - } - ] + "SessionStart": [] } } diff --git a/.cursorrules b/.cursorrules deleted file mode 100644 index 740e7c5..0000000 --- a/.cursorrules +++ /dev/null @@ -1,15 +0,0 @@ -# Cursor Rules - -You are working in a project that follows a strict Task Documentation System. - -## Task System -- **Source of Truth**: The `docs/tasks/` directory contains the state of all work. -- **Workflow**: - 1. Check context: `./scripts/tasks context` - 2. Create task if needed: `./scripts/tasks create ...` - 3. Update status: `./scripts/tasks update ...` -- **Reference**: See `docs/tasks/GUIDE.md` for details. - -## Tools -- Use `./scripts/tasks` for all task operations. -- Use `--format json` if you need to parse output. diff --git a/docs/security/PERMISSIONS.md b/docs/security/PERMISSIONS.md deleted file mode 100644 index e6b3db3..0000000 --- a/docs/security/PERMISSIONS.md +++ /dev/null @@ -1,29 +0,0 @@ -# Agent Permission Governance Model - -This document defines the **Rules of Engagement** for AI agents working on this project. Agents must read and adhere to these boundaries based on their assigned role. - -## Authorization Matrix - -| Level | Name | Description | Examples | -| :--- | :--- | :--- | :--- | -| **L0** | **Viewer** | Read-only access to files, logs, and metadata. | `task_list`, `task_show`, `memory_list`, `ls`, `grep` | -| **L1** | **Contributor** | Can create and edit documentation, tasks, and non-critical assets. | `task_create`, `task_update`, `memory_create`, `agent_send` | -| **L2** | **Developer** | Can modify source code and execute tests. | `write_file (src/*)`, `run_shell_command (pytest)` | -| **L3** | **Admin** | Irreversible or dangerous operations. | `git push`, `rm -rf`, `curl`, `deployment_trigger` | - -## Enforcement Protocol - -Agents are expected to **self-regulate** by following these steps before executing any tool: - -1. **Identify Tool Risk**: Check the `risk_level` of the tool in `docs/interop/TOOLS.md`. -2. **Verify Level**: Compare the tool's risk level with the agent's assigned level (Default: **L2** for Developer agents, unless otherwise specified). -3. **Handle Escalation**: - * If **Risk <= Level**: Execute autonomously. - * If **Risk > Level**: STOP and request explicit human confirmation. - -## Project Specific Policy - -*Default Policy for this repository:* -- Agents are assigned **L2 (Developer)** by default. -- **L3 (Admin)** actions ALWAYS require a human-in-the-loop. -- Modification of `AGENTS.md` or `PERMISSIONS.md` is considered an **L3** action. diff --git a/scripts/hooks/session_start.py b/scripts/hooks/session_start.py deleted file mode 100644 index f1ec4f9..0000000 --- a/scripts/hooks/session_start.py +++ /dev/null @@ -1,64 +0,0 @@ -#!/usr/bin/env python3 -""" -Session Start Hook for Claude. -Loads the latest Ledger and Handoff to restore context. -Input: JSON from Claude (source: startup|resume|clear) -Output: JSON to Claude (hookSpecificOutput: { additionalContext: ... }) -""" -import sys -import os -import json -import glob - -# Determine root -SCRIPT_DIR = os.path.dirname(os.path.abspath(__file__)) -# scripts/hooks/ -> scripts/ -> root -REPO_ROOT = os.path.dirname(os.path.dirname(SCRIPT_DIR)) -CONTINUITY_DIR = os.path.join(REPO_ROOT, "docs", "continuity") -LEDGERS_DIR = os.path.join(CONTINUITY_DIR, "ledgers") -HANDOFFS_DIR = os.path.join(CONTINUITY_DIR, "handoffs") - -def get_latest_content(directory, name): - pattern = os.path.join(directory, "*.md") - files = glob.glob(pattern) - if not files: - return f"No {name} found." - files.sort(reverse=True) - with open(files[0], "r") as f: - return f.read() - -def main(): - # Read input JSON from stdin - try: - input_data = json.load(sys.stdin) - except json.JSONDecodeError: - # Fallback if no input (e.g. manual test) - input_data = {} - - # Logic: Fetch latest ledger and handoff - ledger_content = get_latest_content(LEDGERS_DIR, "Ledger") - handoff_content = get_latest_content(HANDOFFS_DIR, "Handoff") - - context_message = f""" -=== CONTINUITY RESTORED === - -[LATEST LEDGER] -{ledger_content} - -[LATEST HANDOFF] -{handoff_content} - -=========================== -""" - - # Output JSON - output = { - "continue": True, - "hookSpecificOutput": { - "additionalContext": context_message - } - } - print(json.dumps(output)) - -if __name__ == "__main__": - main() diff --git a/templates/task.md b/templates/task.md deleted file mode 100644 index 58a9703..0000000 --- a/templates/task.md +++ /dev/null @@ -1,23 +0,0 @@ -# Task: {title} - -## Task Information -- **Task ID**: {task_id} -- **Status**: pending -- **Priority**: medium -- **Phase**: 1 -- **Estimated Effort**: 1 day -- **Dependencies**: None - -## Task Details - -### Description -{description} - -### Acceptance Criteria -- [ ] Criterion 1 -- [ ] Criterion 2 - ---- - -*Created: {date}* -*Status: pending* From 75236ad274cac1322d16ffd163f709fcc364fc41 Mon Sep 17 00:00:00 2001 From: "google-labs-jules[bot]" <161369871+google-labs-jules[bot]@users.noreply.github.com> Date: Tue, 7 Apr 2026 02:20:30 +0000 Subject: [PATCH 2/2] Remove agent-harness old context tools Co-authored-by: julwrites <18639913+julwrites@users.noreply.github.com>