SurfSense/surfsense_backend/app
CREDO23 2b7d91aa03 feat(automations): add create_automation HITL tool (NL → draft → approve → save)
Single tool exposed to the main agent. The main agent passes a natural-language
`intent`; a focused drafter sub-LLM turns it into a full AutomationCreate JSON;
that JSON is surfaced via request_approval (action_type "automation_create") so
the user can edit/approve it on a frontend card; on approval the tool persists
via AutomationService. Three phases, one tool call.

Scope split:
- main agent sees only `intent: str` (no schema knowledge leaks into the calling
  graph) — prompt fragments scoped accordingly.
- drafter sub-LLM owns the schema + few-shot intent→JSON examples — lives in
  the generating graph's prompt (tools/automation/prompt.py).

Files:
- main_agent/tools/automation/{create.py, prompt.py, __init__.py}: new tool
  + drafter system prompt with two few-shot intent→JSON examples.
- system_prompt/prompts/tools/create_automation/{description.md, example.md}:
  intent-only guidance for the main agent.
- main_agent/tools/index.py: add create_automation to the main-agent allowlist.
- new_chat/tools/registry.py: deferred-import factory to break the
  multi_agent_chat ↔ registry cycle; one ToolDefinition entry.
2026-05-28 00:12:02 +02:00
..
agents feat(automations): add create_automation HITL tool (NL → draft → approve → save) 2026-05-28 00:12:02 +02:00
automations refactor(automations): park manual trigger pending Run-now redesign 2026-05-27 22:29:51 +02:00
config perf(kb-planner): route internal planner calls to dedicated small/fast LLM 2026-05-20 11:42:52 +02:00
connectors chore: linting 2026-04-27 14:04:50 -07:00
etl_pipeline feat(pipeline): enrich ETL and indexing failure telemetry 2026-05-22 17:49:46 +05:30
indexing_pipeline feat(pipeline): enrich ETL and indexing failure telemetry 2026-05-22 17:49:46 +05:30
observability feat(env): add SURFSENSE_ENV variable for deployment environment and update observability resource attributes 2026-05-23 02:13:24 +05:30
prompts feat: add PDF preview and export functionality for Typst-based reports, enhance report content handling 2026-04-15 21:11:27 +05:30
retriever feat(retriever): instrument knowledge base search 2026-05-21 23:03:31 +05:30
routes refactor(automations): park manual trigger pending Run-now redesign 2026-05-27 22:29:51 +02:00
schemas feat: add team memory routes 2026-05-20 02:02:27 +05:30
services Merge remote-tracking branch 'upstream/dev' into improvement-agent-speed 2026-05-20 21:23:48 +02:00
tasks refactor(chat): add streaming/flows/resume_chat/orchestrator + flows public API 2026-05-25 21:50:09 +02:00
templates feat: update report generation and export capabilities to support multiple formats (PDF, DOCX, HTML, LaTeX, EPUB, ODT, plain text) across documentation and backend 2026-03-09 18:41:21 -07:00
utils feat(observability): add SurfSense metric helpers 2026-05-21 23:02:20 +05:30
__init__.py feat: SurfSense v0.0.6 init 2025-03-14 18:53:14 -07:00
app.py feat(observability): add OpenTelemetry process bootstrap 2026-05-21 23:01:54 +05:30
celery_app.py add schedule tick task and beat entry 2026-05-27 17:56:07 +02:00
db.py feat(rbac): add automations permission family 2026-05-27 15:30:34 +02:00
exceptions.py feat: add processing mode support for document uploads and ETL pipeline, improded error handling ux 2026-04-14 21:26:00 -07:00
rate_limiter.py try: ip fix for cludflare 2026-04-16 02:13:52 -07:00
users.py Seed default prompts on registration and for existing users 2026-03-31 18:12:09 +02:00