forked from retoor/devplacepy
feat: add deepsearch research system with CLI prune/clear and database schema
Implement a multi-agent deep web research subsystem including CLI commands for pruning expired jobs and clearing all artifacts, database tables for sessions/messages/URL cache with indexes, config paths for chroma storage, and internal embed URL for vector operations.
This commit is contained in:
@@ -595,6 +595,48 @@ ACTIONS: tuple[Action, ...] = (
|
||||
params=(path("uid", "SEO job uid returned by seo_diagnostics."),),
|
||||
requires_auth=False,
|
||||
),
|
||||
Action(
|
||||
name="deepsearch",
|
||||
method="POST",
|
||||
path="/tools/deepsearch/run",
|
||||
summary="Start a deep multi-agent web research job",
|
||||
description=(
|
||||
"Queues a background DeepSearch job and returns {uid, status_url}. Poll the "
|
||||
"status_url with deepsearch_status until status is 'done', then share the "
|
||||
"score, confidence and session_url. depth (1-4) and max_pages (1-30) control "
|
||||
"how widely it crawls."
|
||||
),
|
||||
params=(
|
||||
body("query", "The research question to investigate.", required=True),
|
||||
body("depth", "Research depth 1-4 (default 2)."),
|
||||
body("max_pages", "Maximum sources to crawl 1-30 (default 12)."),
|
||||
),
|
||||
requires_auth=False,
|
||||
),
|
||||
Action(
|
||||
name="deepsearch_status",
|
||||
method="GET",
|
||||
path="/tools/deepsearch/{uid}",
|
||||
summary="Check a DeepSearch job and obtain its metrics once finished",
|
||||
description=(
|
||||
"Returns the research status. When status is 'done', score, confidence, "
|
||||
"source_diversity and session_url are populated; otherwise poll again shortly."
|
||||
),
|
||||
params=(path("uid", "DeepSearch job uid returned by deepsearch."),),
|
||||
requires_auth=False,
|
||||
),
|
||||
Action(
|
||||
name="deepsearch_session",
|
||||
method="GET",
|
||||
path="/tools/deepsearch/{uid}/session",
|
||||
summary="Read a finished DeepSearch report",
|
||||
description=(
|
||||
"Returns the full cited report for a finished DeepSearch: summary, findings, "
|
||||
"gaps, sources and metrics."
|
||||
),
|
||||
params=(path("uid", "DeepSearch job uid returned by deepsearch."),),
|
||||
requires_auth=False,
|
||||
),
|
||||
Action(
|
||||
name="search_users",
|
||||
method="GET",
|
||||
|
||||
Reference in New Issue
Block a user