Skip to content

[Feature]: Add automatic cleanup support for cron-created isolated sessions #11260

@billybenj

Description

@billybenj

Cron jobs with sessionTarget: "isolated" create a new session for every run, which accumulate indefinitely without manual cleanup. Add a cleanup field (similar to sessions_spawn) or leverage agents.defaults.subagents.archiveAfterMinutes to auto-delete completed cron sessions.

Current Behavior:

• Each cron job run creates a new agent:main:cron- session
• Sessions persist indefinitely (visible in Mission Control)
• Manual deletion required via UI or direct session file removal
Proposed Solution:
Add a cleanup field to the cron job schema:

{
  "schedule": { "kind": "cron", "expr": "0 8 * * *" },
  "sessionTarget": "isolated",
  "cleanup": "delete",  // ← new field
  "payload": { "kind": "agentTurn", "message": "..." }
}

Alternative:
Respect agents.defaults.subagents.archiveAfterMinutes for cron-created sessions (currently only applies to sessions_spawn).

Use Case:
Daily maintenance jobs (update checks, backups, reports) don't need persistent history. Auto-cleanup would prevent session clutter and reduce disk/index overhead.

Workaround:
Currently requires manual deletion via Mission Control UI or a custom cleanup cron job.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions