UNPKG

framework

Version:

The (AI) Framework: turnkey, zero-config AI orchestration that wraps a coding-agent CLI (Claude Code) as a black box and takes you from an idea to a running app. Vite for AI.

53 lines 3.11 kB
import type { Preferences } from './registry.js'; import type { StartRunOptions } from './dashboard/types.js'; import type { FrameworkFileConfig } from './config.js'; /** * Turning the user's preferences into the options a run starts with (#858). * * This lived in the dashboard client, which was fine while the browser was the only thing that * started runs. Auto PM (#685) starts them too, and passed nothing at all — so an unattended run * ignored the agent, the model and every other per-project setting (#840) that a run started from * the launcher would have honoured. * * It lives here, in pure code with no Node imports, so both callers share one mapping rather than * keeping two copies of rules that are not a plain field copy: autopilot defaults on, browser is * Claude-only, the eco drops are suppressed under vanilla/transparent, and the four eco * preferences collapse into one object. Re-exported from the browser-safe `./client` entry (#431) * so the dashboard can go on importing it at runtime. */ /** * A repo's committed `the-framework.yml` as the preference keys it speaks for (#842), so the * launcher and the daemon can layer it under the user's own options the same way. Only the keys * the file set come back, since an unset key must leave the tier below it alone. * * `antiLazyPill` is the file's name for the inverse of Vanilla: removing the built-in prompt. * `preset` and `event` have no preference counterpart (there is no preset picker) and stay on the * raw file config for display. */ export declare function preferencesFromFileConfig(file: FrameworkFileConfig): Preferences; /** Autopilot defaults on (the demo default), matching the old localStorage semantics. */ export declare function autopilotEnabled(preferences: Preferences): boolean; /** * The end-of-session handoff a set of preferences arms (#1102). Both halves default on, which is * what makes it zero-config: a session left alone pushes its branch and opens a draft PR. * * A ladder, not a pair (#1379): pushing is the rung under opening a PR, so `autoPushBranch` is the * master and turning it off publishes nothing. `gh` will not open a PR for a branch the remote has * never seen, so "PR without push" was never a state a run could honour — it used to resolve the * contradiction by turning push back *on*, which meant a launcher that offered "publish nothing" * could not deliver it. Normalised here rather than in the three places that read it. * * Defaults are untouched: both on, so anyone who never opens the menu gets identical behaviour. */ export declare function handoffFromPreferences(preferences: Preferences): { push: boolean; pr: boolean; }; /** * The run options a set of already-resolved preferences implies. * * Takes the merged view, not the two tiers: who wins between the global and the project setting is * `resolvePreferences`' job, and this stays a pure mapping of one settled answer. */ export declare function runOptionsFromPreferences(preferences: Preferences, context?: string[]): StartRunOptions; //# sourceMappingURL=run-options.d.ts.map