Skip to content

[roadmap] Agentize Framework Enhancement Roadmap #598

@were

Description

@were

Overview

This roadmap outlines enhancement opportunities for the agentize framework across its three automation levels:

Level Current State Enhancement Focus
Micro Hook-based permissions, session state, auto-continuation Configurability, robustness
Macro Server polling, worker pool, GitHub Projects Event-driven, observability
One-time Commands as natural language scripts Dry-run, composition

P0: Production Essentials

1. Error Recovery & Retry Mechanism

Problem: Worker crashes result in silent failures; no automatic retry.

Proposal:

  • Add retry_count to session state with configurable MAX_RETRIES
  • Failed issues (after max retries) get agentize:failed label for human triage
  • Leverage existing milestone checkpoints for resumption

Files: python/agentize/server/workers.py, .claude-plugin/lib/session_utils.py


P1: User Experience

2. Dry-Run Mode for Commands

Problem: Users must trust commands completely; no preview mechanism.

Proposal:

  • Add --dry-run flag to critical commands
  • /ultra-planner --dry-run: Show planned issue without creating
  • /issue-to-impl --dry-run: Show execution plan without branching

Files: .claude-plugin/commands/*.md

3. Observability Dashboard

Problem: Monitoring relies on Telegram notifications and scattered log files.

Proposal:

  • Centralized metrics collection in .tmp/metrics/
  • lol serve --dashboard option for local web UI
  • Track: success rate, avg duration, permission decision distribution

Files: python/agentize/server/, src/cli/lol/commands/


P2: Extensibility

4. Configurable Permission Rules

Problem: rules.py is hardcoded; different projects need different rules.

Proposal:

  • Support project-specific rules in .agentize.yaml
  • Allow pattern-based allow/deny overrides
  • Keep hardcoded rules as defaults
# .agentize.yaml
permissions:
  allow:
    - pattern: "npm run deploy:staging"
  deny:
    - pattern: "npm run deploy:prod"

Files: .claude-plugin/lib/permission/rules.py, python/agentize/server/runtime_config.py

5. Event-Driven Architecture (Won't Do)

Problem: 5-minute polling delays response to label changes.

Decision: As per offline discussion, this is over-engineering for the current use case:

  • Webhook integration requires exposing a public endpoint, handling HTTPS certificates, and replay attack prevention
  • The current polling model is simpler and more secure (no inbound connections needed)
  • Polling interval is already configurable via --period flag
  • Wasting some API rate limit is acceptable; if faster response is needed, reduce the period

P3: Advanced Features

6. Workflow Composition

Problem: Complex workflows require manual command chaining.

Proposal:

  • Declarative workflow definition files
  • Support wait_for conditions between steps
  • Example: feature-request → plan → impl → PR → merge
# .claude-plugin/workflows/full-cycle.yaml
steps:
  - command: /ultra-planner --from-issue {issue_no}
    wait_for: plan_accepted
  - command: /issue-to-impl {issue_no}
    wait_for: tests_pass

Files: New .claude-plugin/workflows/ directory

7. Priority Queue

Problem: All issues treated equally; no urgency expression.

Proposal:

  • Support priority:high/medium/low labels
  • Server processes high-priority issues first
  • Optional: Leverage GitHub Projects Priority field

Files: python/agentize/server/github.py

8. Multi-Repository Support

Problem: One server instance serves one repository only.

Proposal:

  • Multi-repo configuration in .agentize.local.yaml
  • Independent worker pools per repository
  • Unified monitoring across repos

Files: python/agentize/server/runtime_config.py, python/agentize/server/__main__.py


Implementation Notes

  • Each item should be a separate issue when ready for implementation
  • P0 items are prerequisites for production deployment
  • P1 items significantly improve adoption friction
  • P2/P3 items are nice-to-have for power users

Related

  • Current architecture documented in source READMEs
  • Permission system: .claude-plugin/lib/permission/
  • Server module: python/agentize/server/
  • Hook system: .claude-plugin/hooks/

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions