Skip to content

[Feature Request] Add the missing extension seams in CAMEL so applications like eigent can use upstream ChatAgent / Workforce directly #1502

@fengju0213

Description

@fengju0213

Motivation

  • eigent still carries local wrappers around ChatAgent, SingleAgentWorker, and Workforce
  • part of that was historically necessary, but a meaningful portion is now redundant because CAMEL already supports:
    • WorkforceCallback and typed workforce events
    • stream_callback
    • pause, resume, stop_gracefully, skip_gracefully
    • paused-state dynamic worker addition

The remaining local fork points are mostly caused by missing public extension seams in CAMEL, not by missing orchestration primitives.

What should go into CAMEL:

  • generic lifecycle callbacks/events
  • reusable orchestration APIs
  • clone/session/resource contracts
  • task state consistency guarantees
  • metadata extension points

What should stay in eigent:

  • SSE and frontend serialization
  • UI states and controller logic
  • product prompts and workflow policy
  • telemetry wiring and dashboard semantics

Remaining Gaps

  1. ChatAgent still lacks a first-class callback/event layer for:

    • step started/completed/failed
    • tool started/completed/failed
  2. Workforce still lacks a clean public “plan first, edit, then execute” API.

    • eigent currently needs a split planning/execution flow for editable subtasks.
  3. Clone/session/resource handling is still too weak for stateful toolkits.

    • apps still need custom clone logic for browser/CDP/session-aware execution.

Plan

  • Add AgentCallback / AgentEvent for ChatAgent and tool lifecycle events.
  • Add a public two-phase planning API in Workforce, such as:
    • plan_task_async(...)
    • run_plan_async(plan)
  • Add a richer clone/session/resource context contract for agents and toolkits.
  • Guarantee task tree synchronization on subtask completion/failure.
  • Carry richer app telemetry through event metadata instead of local callback hacks.

These additions should stay headless and product-agnostic. CAMEL should provide the primitives; applications should decide how to present and use them.

Solution

No response

Alternatives

No response

Additional context

No response

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions