LICENSE
README.md
pyproject.toml
src/backend/agent/__init__.py
src/backend/agent/ports.py
src/backend/agent/agent/__init__.py
src/backend/agent/context/__init__.py
src/backend/agent/context/budget.py
src/backend/agent/context/semantic_compactor.py
src/backend/agent/infrastructure/__init__.py
src/backend/agent/infrastructure/chat_gateway.py
src/backend/agent/infrastructure/context_loader.py
src/backend/agent/memory/context.py
src/backend/agent/memory/messages.py
src/backend/agent/prompts/__init__.py
src/backend/agent/prompts/conversation.py
src/backend/agent/schemas/__init__.py
src/backend/agent/schemas/action_plan.py
src/backend/agent/schemas/chat_stream.py
src/backend/agent/schemas/messages.py
src/backend/agent/schemas/stream_events.py
src/backend/agent/schemas/tool_calls.py
src/backend/agent/session/models.py
src/backend/agent/utils/json_protocol.py
src/backend/agent/validation/__init__.py
src/backend/agent/validation/errors.py
src/backend/agent_graph/__init__.py
src/backend/agent_graph/actions/__init__.py
src/backend/agent_graph/actions/action_dispatcher.py
src/backend/agent_graph/actions/video_action_planner.py
src/backend/agent_graph/evidence/__init__.py
src/backend/agent_graph/evidence/citations.py
src/backend/agent_graph/evidence/inline_citations.py
src/backend/agent_graph/evidence/transcript_anchors.py
src/backend/agent_graph/prompts/__init__.py
src/backend/agent_graph/prompts/actions.py
src/backend/agent_graph/prompts/query.py
src/backend/agent_graph/query/__init__.py
src/backend/agent_graph/query/models.py
src/backend/agent_graph/query/series_answer_synthesizer.py
src/backend/agent_graph/query/series_query_processor.py
src/backend/agent_graph/query/video_answer_synthesizer.py
src/backend/agent_graph/runtime/__init__.py
src/backend/agent_graph/runtime/graph.py
src/backend/agent_graph/runtime/node_catalog.py
src/backend/agent_graph/runtime/nodes.py
src/backend/agent_graph/runtime/outcome.py
src/backend/agent_graph/runtime/service.py
src/backend/agent_graph/runtime/session_recorder.py
src/backend/agent_graph/runtime/state.py
src/backend/agent_graph/runtime/streaming.py
src/backend/agent_graph/runtime/turns.py
src/backend/api/__init__.py
src/backend/api/dependencies.py
src/backend/api/adapters/__init__.py
src/backend/api/adapters/agent_runtime_provider.py
src/backend/api/adapters/durable_workspace_index_refresher.py
src/backend/api/adapters/linked_video_downloader.py
src/backend/api/adapters/rag_retrieval_proxy.py
src/backend/api/common/__init__.py
src/backend/api/common/access_log.py
src/backend/api/common/app.py
src/backend/api/common/capabilities.py
src/backend/api/di/__init__.py
src/backend/api/di/bootstrap.py
src/backend/api/di/container.py
src/backend/api/di/workspace_services.py
src/backend/api/http/__init__.py
src/backend/api/http/app.py
src/backend/api/http/server.py
src/backend/api/http/static_assets.py
src/backend/api/routes/__init__.py
src/backend/api/routes/agent.py
src/backend/api/routes/health.py
src/backend/api/routes/jobs.py
src/backend/api/routes/linked.py
src/backend/api/routes/videos.py
src/backend/api/schemas/__init__.py
src/backend/api/schemas/contracts.py
src/backend/api/schemas/responses.py
src/backend/api/schemas/sse.py
src/backend/api/workers/__init__.py
src/backend/api/workers/workspace_index_worker.py
src/backend/bilibili/__init__.py
src/backend/bilibili/ytdlp_bilibili.py
src/backend/chaoxing/__init__.py
src/backend/chaoxing/chaoxing_api.py
src/backend/core/__init__.py
src/backend/core/audit.py
src/backend/core/blob_store.py
src/backend/core/capabilities.py
src/backend/core/chat.py
src/backend/core/citations.py
src/backend/core/context.py
src/backend/core/errors.py
src/backend/core/ids.py
src/backend/core/preferences.py
src/backend/core/quota.py
src/backend/core/request_context.py
src/backend/core/secrets.py
src/backend/external/__init__.py
src/backend/external/ytdlp.py
src/backend/mcp/__init__.py
src/backend/mcp/video_series_client.py
src/backend/mcp/video_series_server.py
src/backend/shared/__init__.py
src/backend/shared/bilibili_ytdlp.py
src/backend/shared/filesystem.py
src/backend/shared/observability.py
src/backend/shared/ytdlp.py
src/backend/shared/llm/__init__.py
src/backend/shared/llm/base_url.py
src/backend/shared/llm/chat_stream.py
src/backend/shared/llm/json_mode.py
src/backend/shared/llm/litellm_gateway.py
src/backend/shared/llm/multimodal.py
src/backend/shared/llm/usage.py
src/backend/video_summary/__init__.py
src/backend/video_summary/agent_adapter.py
src/backend/video_summary/tool_executor.py
src/backend/video_summary/domain/__init__.py
src/backend/video_summary/domain/models.py
src/backend/video_summary/generation/__init__.py
src/backend/video_summary/generation/cancellation.py
src/backend/video_summary/generation/ports.py
src/backend/video_summary/generation/renderers.py
src/backend/video_summary/generation/schemas.py
src/backend/video_summary/generation/stage_cache.py
src/backend/video_summary/generation/visuals.py
src/backend/video_summary/generation/prompts/__init__.py
src/backend/video_summary/generation/prompts/series_mindmap.py
src/backend/video_summary/generation/prompts/summary.py
src/backend/video_summary/generation/usecases/__init__.py
src/backend/video_summary/generation/usecases/generate_mindmap.py
src/backend/video_summary/generation/usecases/generate_series_mindmap.py
src/backend/video_summary/generation/usecases/generate_summary.py
src/backend/video_summary/infrastructure/__init__.py
src/backend/video_summary/infrastructure/application_builders.py
src/backend/video_summary/infrastructure/concurrent_ai_summary_runner.py
src/backend/video_summary/infrastructure/in_memory_progress_tracker.py
src/backend/video_summary/infrastructure/media_tools.py
src/backend/video_summary/infrastructure/mindmap_workflow.py
src/backend/video_summary/infrastructure/runtime.py
src/backend/video_summary/infrastructure/runtime_capabilities.py
src/backend/video_summary/infrastructure/series_mindmap_workflow.py
src/backend/video_summary/infrastructure/subtitle_transcripts.py
src/backend/video_summary/infrastructure/video_summary_runtime.py
src/backend/video_summary/infrastructure/video_summary_workflow.py
src/backend/video_summary/infrastructure/visual_frame_pool.py
src/backend/video_summary/infrastructure/asr/__init__.py
src/backend/video_summary/infrastructure/asr/aliyun_bailian_transcriber.py
src/backend/video_summary/infrastructure/asr/faster_whisper_models.py
src/backend/video_summary/infrastructure/asr/faster_whisper_transcriber.py
src/backend/video_summary/infrastructure/asr/huggingface_asr_models.py
src/backend/video_summary/infrastructure/asr/huggingface_model_downloader.py
src/backend/video_summary/infrastructure/asr/whisper_cpp_models.py
src/backend/video_summary/infrastructure/asr/whisper_cpp_transcriber.py
src/backend/video_summary/infrastructure/config/__init__.py
src/backend/video_summary/infrastructure/config/settings.py
src/backend/video_summary/infrastructure/config/settings_service.py
src/backend/video_summary/infrastructure/llm/__init__.py
src/backend/video_summary/infrastructure/llm/litellm_knowledge_card_generator.py
src/backend/video_summary/infrastructure/llm/litellm_mindmap_generator.py
src/backend/video_summary/infrastructure/llm/litellm_note_generator.py
src/backend/video_summary/infrastructure/llm/litellm_series_mindmap_generator.py
src/backend/video_summary/infrastructure/llm/litellm_summarizer.py
src/backend/video_summary/infrastructure/llm/litellm_transcript_enhancer.py
src/backend/video_summary/infrastructure/llm/litellm_visual_summary_enricher.py
src/backend/video_summary/infrastructure/llm/litellm_web_search.py
src/backend/video_summary/infrastructure/llm/prompts/__init__.py
src/backend/video_summary/infrastructure/llm/prompts/knowledge_cards.py
src/backend/video_summary/infrastructure/llm/prompts/mindmap.py
src/backend/video_summary/infrastructure/llm/prompts/notes.py
src/backend/video_summary/infrastructure/persistence/__init__.py
src/backend/video_summary/infrastructure/persistence/control_plane_repository.py
src/backend/video_summary/infrastructure/persistence/current_content_repository.py
src/backend/video_summary/infrastructure/persistence/database.py
src/backend/video_summary/infrastructure/persistence/job_repository.py
src/backend/video_summary/infrastructure/persistence/job_worker.py
src/backend/video_summary/infrastructure/persistence/migrate.py
src/backend/video_summary/infrastructure/persistence/models.py
src/backend/video_summary/infrastructure/persistence/outbox_repository.py
src/backend/video_summary/infrastructure/persistence/outbox_worker.py
src/backend/video_summary/infrastructure/persistence/sql_agent_session_store.py
src/backend/video_summary/infrastructure/persistence/sql_generation_adapters.py
src/backend/video_summary/infrastructure/persistence/sql_rag_source.py
src/backend/video_summary/infrastructure/persistence/sql_video_workspace.py
src/backend/video_summary/infrastructure/persistence/migrations/env.py
src/backend/video_summary/infrastructure/persistence/migrations/versions/0001_control_plane.py
src/backend/video_summary/infrastructure/persistence/migrations/versions/0002_blob_metadata.py
src/backend/video_summary/infrastructure/persistence/migrations/versions/0003_current_content_staging.py
src/backend/video_summary/infrastructure/persistence/migrations/versions/0004_legacy_import_tracking.py
src/backend/video_summary/infrastructure/persistence/migrations/versions/0005_structured_artifacts.py
src/backend/video_summary/infrastructure/persistence/migrations/versions/0006_rag_chunks.py
src/backend/video_summary/infrastructure/persistence/migrations/versions/0007_linked_series.py
src/backend/video_summary/infrastructure/persistence/migrations/versions/0008_sessions_and_usage.py
src/backend/video_summary/infrastructure/persistence/migrations/versions/0009_job_execution.py
src/backend/video_summary/infrastructure/persistence/migrations/versions/0010_workspace_scoped_agent_sessions.py
src/backend/video_summary/infrastructure/persistence/migrations/versions/0011_outbox_claim_token.py
src/backend/video_summary/infrastructure/persistence/migrations/versions/0012_job_parent_relationship.py
src/backend/video_summary/infrastructure/persistence/migrations/versions/0013_outbox_workspace_retry_policy.py
src/backend/video_summary/infrastructure/persistence/migrations/versions/0014_media_storage_modes.py
src/backend/video_summary/infrastructure/persistence/migrations/versions/0015_manual_legacy_migration.py
src/backend/video_summary/infrastructure/persistence/migrations/versions/0016_model_job_resource_id.py
src/backend/video_summary/infrastructure/persistence/migrations/versions/0017_bilibili_inbox_series.py
src/backend/video_summary/infrastructure/rag/__init__.py
src/backend/video_summary/infrastructure/rag/rag_models.py
src/backend/video_summary/infrastructure/rag/agent_memory/__init__.py
src/backend/video_summary/infrastructure/rag/agent_memory/document_schema.py
src/backend/video_summary/infrastructure/rag/agent_memory/fastembed_adapter.py
src/backend/video_summary/infrastructure/rag/agent_memory/index_builder.py
src/backend/video_summary/infrastructure/rag/agent_memory/pinpoint.py
src/backend/video_summary/infrastructure/rag/agent_memory/retrieval.py
src/backend/video_summary/infrastructure/rag/agent_memory/video_workflow.py
src/backend/video_summary/infrastructure/storage/__init__.py
src/backend/video_summary/infrastructure/storage/mindmap_export.py
src/backend/video_summary/infrastructure/storage/temporary_generation_artifact_store.py
src/backend/video_summary/library/__init__.py
src/backend/video_summary/library/constants.py
src/backend/video_summary/library/linked_models.py
src/backend/video_summary/library/markdown_exports.py
src/backend/video_summary/library/models.py
src/backend/video_summary/library/note_images.py
src/backend/video_summary/library/parsers.py
src/backend/video_summary/library/ports.py
src/backend/video_summary/library/subtitle_exports.py
src/backend/video_summary/library/usecases/__init__.py
src/backend/video_summary/library/usecases/ai_notes.py
src/backend/video_summary/library/usecases/ai_summary.py
src/backend/video_summary/library/usecases/auto_generate_artifacts.py
src/backend/video_summary/library/usecases/content_editing.py
src/backend/video_summary/library/usecases/imports.py
src/backend/video_summary/library/usecases/knowledge_cards.py
src/backend/video_summary/library/usecases/library_queries.py
src/backend/video_summary/library/usecases/linked_videos.py
src/backend/video_summary/library/usecases/mindmap_generation.py
src/backend/video_summary/library/usecases/mutations.py
src/backend/video_summary/library/usecases/notes.py
src/backend/video_summary/library/usecases/series_exports.py
src/backend/video_summary/library/usecases/series_mindmap_generation.py
src/backend/video_summary/library/usecases/series_synopsis_generation.py
src/backend/video_summary/library/usecases/summary_generation.py
src/backend/video_summary/tools/__init__.py
src/backend/video_summary/tools/catalog.py
src/backend/video_summary/tools/context_access.py
src/backend/video_summary/tools/library_info.py
src/backend/video_summary/tools/mindmap.py
src/backend/video_summary/tools/notes.py
src/backend/video_summary/tools/overview.py
src/backend/video_summary/tools/series.py
src/backend/video_summary/tools/video.py
src/vsummary_core.egg-info/PKG-INFO
src/vsummary_core.egg-info/SOURCES.txt
src/vsummary_core.egg-info/dependency_links.txt
src/vsummary_core.egg-info/requires.txt
src/vsummary_core.egg-info/top_level.txt