initrunner 0.2.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- initrunner/__init__.py +1 -0
- initrunner/_compat.py +55 -0
- initrunner/_examples_catalog.json +569 -0
- initrunner/_graph.py +76 -0
- initrunner/_html.py +55 -0
- initrunner/_ids.py +10 -0
- initrunner/_log.py +51 -0
- initrunner/_paths.py +19 -0
- initrunner/_signal.py +37 -0
- initrunner/_static/app.js +283 -0
- initrunner/_static/daisyui.css +19 -0
- initrunner/_static/ext/sse.js +290 -0
- initrunner/_static/ext/ws.js +471 -0
- initrunner/_static/htmx.min.js +1 -0
- initrunner/_static/style.css +73 -0
- initrunner/_static/tailwindcss.js +83 -0
- initrunner/_templates/_macros.html +45 -0
- initrunner/_templates/_nav.html +27 -0
- initrunner/_templates/audit/_detail.html +84 -0
- initrunner/_templates/audit/_table.html +24 -0
- initrunner/_templates/audit/list.html +77 -0
- initrunner/_templates/auth/login.html +40 -0
- initrunner/_templates/base.html +21 -0
- initrunner/_templates/chat/_message.html +10 -0
- initrunner/_templates/chat/_tool_call.html +17 -0
- initrunner/_templates/chat/page.html +179 -0
- initrunner/_templates/daemon/page.html +154 -0
- initrunner/_templates/ingest/page.html +162 -0
- initrunner/_templates/memory/page.html +81 -0
- initrunner/_templates/roles/_table.html +41 -0
- initrunner/_templates/roles/create.html +300 -0
- initrunner/_templates/roles/detail.html +203 -0
- initrunner/_templates/roles/list.html +43 -0
- initrunner/_yaml.py +45 -0
- initrunner/agent/__init__.py +0 -0
- initrunner/agent/_env.py +19 -0
- initrunner/agent/_paths.py +43 -0
- initrunner/agent/_subprocess.py +180 -0
- initrunner/agent/_truncate.py +14 -0
- initrunner/agent/_urls.py +111 -0
- initrunner/agent/api_tools.py +154 -0
- initrunner/agent/delegation.py +212 -0
- initrunner/agent/executor.py +450 -0
- initrunner/agent/git_tools.py +220 -0
- initrunner/agent/history.py +46 -0
- initrunner/agent/loader.py +188 -0
- initrunner/agent/memory_ops.py +165 -0
- initrunner/agent/plugins.py +76 -0
- initrunner/agent/policies.py +270 -0
- initrunner/agent/python_tools.py +111 -0
- initrunner/agent/reflection.py +38 -0
- initrunner/agent/sandbox.py +355 -0
- initrunner/agent/schema.py +719 -0
- initrunner/agent/shell_tools.py +121 -0
- initrunner/agent/skills.py +272 -0
- initrunner/agent/slack_tools.py +65 -0
- initrunner/agent/sql_tools.py +114 -0
- initrunner/agent/tools/__init__.py +74 -0
- initrunner/agent/tools/_registry.py +180 -0
- initrunner/agent/tools/custom.py +270 -0
- initrunner/agent/tools/datetime_tools.py +42 -0
- initrunner/agent/tools/filesystem.py +78 -0
- initrunner/agent/tools/http.py +44 -0
- initrunner/agent/tools/memory.py +106 -0
- initrunner/agent/tools/reflection.py +71 -0
- initrunner/agent/tools/registry.py +88 -0
- initrunner/agent/tools/retrieval.py +76 -0
- initrunner/agent/tools/scheduling.py +90 -0
- initrunner/agent/tools/web_reader.py +49 -0
- initrunner/agent/tools/web_scraper.py +143 -0
- initrunner/api/__init__.py +1 -0
- initrunner/api/_helpers.py +54 -0
- initrunner/api/app.py +199 -0
- initrunner/api/auth.py +36 -0
- initrunner/api/facehash.py +146 -0
- initrunner/api/models.py +165 -0
- initrunner/api/routes/__init__.py +0 -0
- initrunner/api/routes/audit.py +55 -0
- initrunner/api/routes/auth_ui.py +81 -0
- initrunner/api/routes/chat_ui.py +277 -0
- initrunner/api/routes/daemon.py +237 -0
- initrunner/api/routes/daemon_ui.py +37 -0
- initrunner/api/routes/ingest.py +137 -0
- initrunner/api/routes/ingest_ui.py +52 -0
- initrunner/api/routes/memory.py +71 -0
- initrunner/api/routes/memory_ui.py +91 -0
- initrunner/api/routes/pages.py +168 -0
- initrunner/api/routes/roles.py +220 -0
- initrunner/api/state.py +161 -0
- initrunner/audit/__init__.py +0 -0
- initrunner/audit/_redact.py +31 -0
- initrunner/audit/logger.py +583 -0
- initrunner/cli/__init__.py +0 -0
- initrunner/cli/_helpers.py +147 -0
- initrunner/cli/audit_cmd.py +98 -0
- initrunner/cli/compose_cmd.py +388 -0
- initrunner/cli/examples_cmd.py +131 -0
- initrunner/cli/main.py +102 -0
- initrunner/cli/mcp_cmd.py +46 -0
- initrunner/cli/memory_cmd.py +68 -0
- initrunner/cli/plugin_cmd.py +34 -0
- initrunner/cli/registry_cmd.py +168 -0
- initrunner/cli/role_cmd.py +289 -0
- initrunner/cli/run_cmd.py +326 -0
- initrunner/cli/server_cmd.py +337 -0
- initrunner/cli/setup_cmd.py +405 -0
- initrunner/cli/skill_cmd.py +133 -0
- initrunner/cli/wizard.py +207 -0
- initrunner/compose/__init__.py +38 -0
- initrunner/compose/delegate_sink.py +399 -0
- initrunner/compose/health.py +92 -0
- initrunner/compose/loader.py +17 -0
- initrunner/compose/orchestrator.py +457 -0
- initrunner/compose/schema.py +126 -0
- initrunner/compose/systemd.py +360 -0
- initrunner/config.py +53 -0
- initrunner/eval/__init__.py +1 -0
- initrunner/eval/assertions.py +58 -0
- initrunner/eval/runner.py +116 -0
- initrunner/eval/schema.py +54 -0
- initrunner/examples.py +166 -0
- initrunner/ingestion/__init__.py +0 -0
- initrunner/ingestion/chunker.py +78 -0
- initrunner/ingestion/embeddings.py +127 -0
- initrunner/ingestion/extractors.py +124 -0
- initrunner/ingestion/pipeline.py +753 -0
- initrunner/mcp/__init__.py +0 -0
- initrunner/mcp/introspect.py +95 -0
- initrunner/mcp/server.py +97 -0
- initrunner/memory/__init__.py +0 -0
- initrunner/middleware.py +203 -0
- initrunner/pipeline/__init__.py +16 -0
- initrunner/pipeline/executor.py +255 -0
- initrunner/pipeline/loader.py +35 -0
- initrunner/pipeline/schema.py +75 -0
- initrunner/py.typed +0 -0
- initrunner/registry.py +555 -0
- initrunner/role_generator.py +274 -0
- initrunner/runner/__init__.py +33 -0
- initrunner/runner/autonomous.py +244 -0
- initrunner/runner/budget.py +55 -0
- initrunner/runner/daemon.py +228 -0
- initrunner/runner/display.py +146 -0
- initrunner/runner/interactive.py +104 -0
- initrunner/runner/single.py +38 -0
- initrunner/server/__init__.py +0 -0
- initrunner/server/app.py +524 -0
- initrunner/server/conversations.py +71 -0
- initrunner/server/convert.py +90 -0
- initrunner/server/models.py +71 -0
- initrunner/server/rate_limiter.py +40 -0
- initrunner/services.py +583 -0
- initrunner/sinks/__init__.py +0 -0
- initrunner/sinks/base.py +70 -0
- initrunner/sinks/custom.py +30 -0
- initrunner/sinks/dispatcher.py +105 -0
- initrunner/sinks/file.py +45 -0
- initrunner/sinks/webhook.py +51 -0
- initrunner/stores/__init__.py +39 -0
- initrunner/stores/base.py +258 -0
- initrunner/stores/factory.py +69 -0
- initrunner/stores/sqlite_vec.py +872 -0
- initrunner/templates.py +476 -0
- initrunner/triggers/__init__.py +0 -0
- initrunner/triggers/base.py +40 -0
- initrunner/triggers/cron.py +39 -0
- initrunner/triggers/dispatcher.py +104 -0
- initrunner/triggers/file_watcher.py +67 -0
- initrunner/triggers/schedule_queue.py +101 -0
- initrunner/triggers/webhook.py +102 -0
- initrunner/tui/__init__.py +15 -0
- initrunner/tui/app.py +44 -0
- initrunner/tui/app.tcss +364 -0
- initrunner/tui/screens/__init__.py +1 -0
- initrunner/tui/screens/audit.py +148 -0
- initrunner/tui/screens/base.py +95 -0
- initrunner/tui/screens/daemon.py +200 -0
- initrunner/tui/screens/detail.py +474 -0
- initrunner/tui/screens/detail_fields.py +350 -0
- initrunner/tui/screens/detail_modals.py +162 -0
- initrunner/tui/screens/detail_yaml.py +49 -0
- initrunner/tui/screens/help.py +116 -0
- initrunner/tui/screens/ingest.py +156 -0
- initrunner/tui/screens/memory.py +153 -0
- initrunner/tui/screens/roles.py +303 -0
- initrunner/tui/screens/run.py +444 -0
- initrunner/tui/services.py +220 -0
- initrunner/tui/theme.py +26 -0
- initrunner/tui/widgets/__init__.py +1 -0
- initrunner/tui/widgets/chat_input.py +27 -0
- initrunner/tui/widgets/chat_view.py +246 -0
- initrunner-0.2.0.dist-info/METADATA +486 -0
- initrunner-0.2.0.dist-info/RECORD +196 -0
- initrunner-0.2.0.dist-info/WHEEL +4 -0
- initrunner-0.2.0.dist-info/entry_points.txt +2 -0
- initrunner-0.2.0.dist-info/licenses/LICENSE +21 -0
initrunner/__init__.py
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
__version__ = "0.2.0"
|
initrunner/_compat.py
ADDED
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
"""Optional dependency helpers with actionable error messages."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
|
|
5
|
+
import importlib
|
|
6
|
+
|
|
7
|
+
_PROVIDER_PACKAGES: dict[str, str] = {
|
|
8
|
+
"openai": "openai",
|
|
9
|
+
"anthropic": "anthropic",
|
|
10
|
+
"google": "google.generativeai",
|
|
11
|
+
"groq": "groq",
|
|
12
|
+
"mistral": "mistralai",
|
|
13
|
+
"cohere": "cohere",
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
_PROVIDER_EXTRAS: dict[str, str] = {
|
|
17
|
+
"anthropic": "anthropic",
|
|
18
|
+
"google": "google",
|
|
19
|
+
"groq": "groq",
|
|
20
|
+
"mistral": "mistral",
|
|
21
|
+
"cohere": "all-models",
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
_INGEST_PACKAGES: dict[str, str] = {
|
|
25
|
+
"pymupdf4llm": "pymupdf4llm",
|
|
26
|
+
"docx": "python-docx",
|
|
27
|
+
"openpyxl": "openpyxl",
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
def require_provider(provider: str) -> None:
|
|
32
|
+
"""Check that the SDK for *provider* is importable, or raise with install hint."""
|
|
33
|
+
if provider in ("openai", "ollama"):
|
|
34
|
+
return # openai SDK always available with core install; ollama uses it
|
|
35
|
+
module = _PROVIDER_PACKAGES.get(provider)
|
|
36
|
+
if module is None:
|
|
37
|
+
raise RuntimeError(f"Unknown provider '{provider}'")
|
|
38
|
+
try:
|
|
39
|
+
importlib.import_module(module)
|
|
40
|
+
except ImportError:
|
|
41
|
+
extra = _PROVIDER_EXTRAS.get(provider, "all-models")
|
|
42
|
+
raise RuntimeError(
|
|
43
|
+
f"Provider '{provider}' requires: pip install initrunner[{extra}]"
|
|
44
|
+
) from None
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
def require_ingest(package: str) -> None:
|
|
48
|
+
"""Check that a heavy ingest dependency is importable, or raise with install hint."""
|
|
49
|
+
try:
|
|
50
|
+
importlib.import_module(package)
|
|
51
|
+
except ImportError:
|
|
52
|
+
pip_name = _INGEST_PACKAGES.get(package, package)
|
|
53
|
+
raise RuntimeError(
|
|
54
|
+
f"'{pip_name}' is required for this file type: pip install initrunner[ingest]"
|
|
55
|
+
) from None
|