octoflow-plugins
v1.0.1
Published
Scheduler, skill curator, and TUI plugins for OctoFlow.
Maintainers
Readme
octoflow-plugins
Optional plugins for OctoFlow runtimes: scheduler, skill curator, and TUI. Import the subpath you need when you want time-based jobs, skill distillation, or an interactive terminal loop without pulling every plugin into your app.
Plugins are runtime extension bundles. They can register tools/actions, MCP servers, skills, context, hooks, and lifecycle cleanup, but those concepts are distinct. See ../../docs/tools.md#plugins-hooks-and-events.
Install
npm install octoflow-core octoflow-pluginsNode.js >=20 is required.
Use It When
- You need cron, interval, or one-off agent jobs with persistent checkpoints.
- You want to capture task trajectories and promote reusable behavior into
SKILL.mddrafts. - You want a readline TUI with slash commands for local operations.
- You prefer optional plugin composition over baking these concerns into your core runtime.
Subpaths
| Import | Use for |
| ---------------------------- | -------------------------------------------------------------------------------------- |
| octoflow-plugins/scheduler | Persistent cron, interval, one-off jobs, tick loop, platform delivery, schedule tools. |
| octoflow-plugins/curator | Trajectory capture, skill distillation, idle gate, approval facade, skill write-back. |
| octoflow-plugins/tui | Readline slash-command loop with /help, /scheduler, /curator, /env, /model. |
| octoflow-plugins | Root export when you intentionally want all plugin surfaces. |
Scheduler Start
import { createAgent } from 'octoflow-core';
import {
createInMemoryCheckpointStore,
createSchedulerPlugin,
} from 'octoflow-plugins/scheduler';
const store = createInMemoryCheckpointStore();
const agent = await createAgent({
priority: ['anthropic-api'],
plugins: [createSchedulerPlugin({ store })],
});The agent now has scheduler APIs and schedule tools.
Curator Start
import { createAgent } from 'octoflow-core';
import {
createCuratorPlugin,
defaultDistiller,
} from 'octoflow-plugins/curator';
const agent = await createAgent({
priority: ['anthropic-api'],
plugins: [
createCuratorPlugin({
distiller: defaultDistiller(),
skillsDir: './skills',
}),
],
});The default curator captures completed task summaries, tool calls, and tool results before distilling. It skips trivial successes unless the trajectory has tool usage, multiple steps, or a substantial summary.
TUI Start
import { createAgent } from 'octoflow-core';
import { builtinSlashCommands, runTui } from 'octoflow-plugins/tui';
const agent = await createAgent({ priority: ['anthropic-api'] });
const tui = runTui({
bridge: agent.bridge,
commands: builtinSlashCommands(),
});
await tui.done();Learn More
../../docs/multi-agent.md#task-automation- task automation patterns.../../docs/tools.md#plugins-hooks-and-events- plugin lifecycle and hooks.../octoflow-adapters- platform delivery for scheduled jobs.../octoflow-core- runtime plugins attach to.
Validate
npm run -w octoflow-plugins lint
npm run -w octoflow-plugins typecheck
npm run -w octoflow-plugins testStatus
Preview. Pin versions and read ../../CHANGELOG.md before depending on it in production.
