Files
opus-orchestrator-ai/opus_orchestrator/__init__.py
T
mrhavens 9eee1ac1e7 Add GitHub ingestion - pull content from repos as source material
- GitHubIngestor class to fetch repo contents
- Support for .md, .txt, .notes, .draft files
- Method to ingest from GitHub directly into orchestrator
- Export GitHubIngestor in __init__.py

Usage:
    orch = OpusOrchestrator(book_type='fiction', genre='memoir')
    content = await orch.ingest_from_github('mrhavens/my-notes')
    await orch.run()
2026-03-13 00:40:47 +00:00

69 lines
1.7 KiB
Python

"""Opus Orchestrator AI.
Full-flow AI book generation using LangGraph, CrewAI, AutoGen, and PydanticAI.
Integrates Fiction Fortress and Nonfiction Fortress methodologies.
"""
from opus_orchestrator.agents.fiction import (
ArchitectAgent,
CharacterLeadAgent,
EditorAgent,
VoiceAgent,
WorldsmithAgent,
)
from opus_orchestrator.agents.nonfiction import (
AnalystAgent,
FactCheckerAgent,
NonfictionEditorAgent,
NonfictionWriterAgent,
ResearcherAgent,
)
from opus_orchestrator.config import OpusConfig, get_config
from opus_orchestrator.schemas import (
BookIntent,
BookType,
Manuscript,
RawContent,
)
from opus_orchestrator.state import OpusState, create_initial_state
from opus_orchestrator.langgraph_workflow import OpusGraph, run_opus, OpusGraphState
from opus_orchestrator.autogen_critique import CritiqueCrew, create_critique_crew
from opus_orchestrator.utils.github_ingest import GitHubIngestor, create_github_ingestor
from opus_orchestrator.frameworks import StoryFramework
__all__ = [
# Config
"OpusConfig",
"get_config",
# State
"OpusState",
"create_initial_state",
# Schemas
"BookIntent",
"BookType",
"Manuscript",
"RawContent",
# Fiction Agents
"ArchitectAgent",
"CharacterLeadAgent",
"EditorAgent",
"VoiceAgent",
"WorldsmithAgent",
# Nonfiction Agents
"ResearcherAgent",
"AnalystAgent",
"NonfictionWriterAgent",
"FactCheckerAgent",
"NonfictionEditorAgent",
# LangGraph
"OpusGraph",
"OpusGraphState",
"run_opus",
"StoryFramework",
# Main (legacy)
"OpusOrchestrator",
]
# Import legacy orchestrator for backward compatibility
from opus_orchestrator.orchestrator import OpusOrchestrator