513th EWS

Bastard AI
connecting…
Say hello, or type a message. Hold the mic to dictate. Type / for commands, @path to attach a file.

Available rules

Create new rule

Describe the directive in plain language. The currently-selected LLM (Vantage or AskSage, per Settings) drafts the rule's markdown (YAML frontmatter + body) and validates the frontmatter. On a validation miss, the drafter retries once with the errors fed back. You then review the draft and click Create.

Available skills

Create new skill

Describe what the skill should do. The currently-selected LLM (Vantage or AskSage, per Settings) drafts SKILL.md and the Python module, then runs the same three-stage validator (frontmatter parse → py_compile → load probe) the manual path uses. On a validation miss, the drafter retries once with the errors fed back. You then review the draft and click Create.

Import skill

Upload a .zip containing SKILL.md and one or more .py files. Other file types are rejected. Path-traversal entries and symlinks are blocked. Total uncompressed size must be under 5 MB.

Workspace

Your 50 GB cloud workspace. The agent saves here by default; drag files anywhere on this panel to upload. To touch files on your actual machine instead, ask the agent — local-device operations route through your helper exe.
Loading…

/

Upload

Or drag & drop files anywhere on this panel. Uploads land in the folder shown above.

Scheduled tasks

Scheduled tasks fire a synthetic user prompt through the orchestrator — every loaded skill and tool is available. Schedules only run while Bastard AI is running; if you close the app, the next trigger fires whenever you reopen it (within 5 minutes of the missed time).
Loading…
Pick a schedule on the left to view its details and run history, or click + New schedule to create one.

Settings

LLM provider

Pick the inference enclave for both the chat LLM and the knowledge-graph extraction LLM. Vantage / Envision use an OpenAI-compatible Foundry proxy; AskSage uses api.genai.army.mil; Local talks to any OpenAI-compatible server you run yourself (llama.cpp, vLLM, Ollama). Switching is hot — no restart, no re-sign-in. The bearer JWT / API key expires periodically — paste a fresh value here when the provider returns 401.

Microsoft 365 (Graph)

Sign-in always requests the full read+write scope set, so flipping the write toggle below is instant — no re-sign-in needed. The runtime guard remains the source of truth for whether mutations are permitted.

Diagnostics

Debug shows event flow; verbose adds full payload dumps to the per-subsystem log files. Triggers off bypasses the regex pre-execution layer.

File Size Limits

Caps on what the agent can read from disk, what you can upload via the chat, and what the rag image tools accept. Changes apply immediately — no restart. Out-of-range values are clamped to the per-knob safe range. Click "Reset to factory" to revert all seven to their shipped defaults.

Allowed Drives & Paths

Paths the agent's file_system tools may read and write under. Anything outside this list is refused. Changes apply immediately — no restart. Paths that don't exist on disk are dropped silently and listed in the save status. The base directory must be inside one of the allowed paths.

      Comms Streamlining

      Settings for the comms-streamlining skill. The OneDrive root is where tracker syncs (action items, projects, info logs) are mirrored. Default "/" is your actual OneDrive root.

      Chain patterns (planner seeds)

      Markdown source of the workflow patterns the planner uses to match user requests to multi-agent chains. Lives at chain_patterns.md in the project root — edit here or directly on disk. Each pattern is a ## Pattern Name block with **ID:** `pattern_id`, a description, **Keywords:**, and a yaml code block of steps. Save validates parses; if zero patterns parse, the save is refused so you don't accidentally wipe every chain pattern. After save the planner DB is reseeded immediately — no restart.

      Helper devices

      Each device that runs your helper exe authenticates via a long-lived bearer token bound to your account. Generate a one-time pair code here, paste it into the helper's first-run prompt, and the helper exchanges it for a token it stores DPAPI-sealed on the device. Revoke a device any time — its token stops validating immediately on the next connect.
      Loading…