بنقرة واحدة
workflows
Manage application workflows including configuration, restart, and removal.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Manage application workflows including configuration, restart, and removal.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
A test skill for validating secondary skill deployment.
List and manage user feedback items from the agent inbox. Use when the user asks about feedback, bug reports, feature requests, or inbox items.
Spawn a code review (architect) subagent for deep analysis, planning, and debugging. The architect specializes in strategic guidance rather than implementation. Architect should be called after building major features. Relies on `delegation` skill.
Create and manage Replit's built-in PostgreSQL databases, check status, execute SQL queries with safety checks, and run read-only queries against the production database.
Delegate tasks to specialized subagents. Use subagent for synchronous task execution, startAsyncSubagent for background task execution, messageSubagent for async follow-ups, or messageSubagentAndGetResponse for sync follow-ups.
Configure and publish your project. Use to set deployment settings and suggest publishing when the app is ready.
| name | workflows |
| description | Manage application workflows including configuration, restart, and removal. |
A workflow binds a shell command (e.g., npm run dev, python run.py, cargo run) to a long-running task managed by Replit. Workflows are used to run webservers, background services, TUIs, and other persistent processes.
Key characteristics:
Keep workflows minimal: One workflow per project is usually sufficient. Use the main frontend server or TUI as your primary workflow.
Choose the right workflow: If your project has a frontend or TUI, set the workflow to the process that updates what the user sees.
Clean up unused workflows: When adding new workflows, remove any existing workflows that are no longer needed.
Always restart after changes: Restart workflows after making server-side code changes to ensure updates are visible to the user. Verify they run without errors before returning to the user.
Use bash for one-off commands: Workflows are for persistent processes. Use bash for build scripts, testing, or commands that don't need to keep running.
Use this skill when:
List all configured workflows with their current state.
Parameters: None
Returns: List of workflow info dicts with name (str), command (str), and state ("not_started", "running", "finished", "failed").
Example:
const workflows = await listWorkflows();
for (const w of workflows) {
console.log(`${w.name}: ${w.state}`);
}
Get detailed status of a specific workflow including output logs and open ports.
Parameters:
name (str, required): Name of the workflow to checkmaxScrollbackLines (int, default 100): Number of output lines to includeReturns: Dict with name, command, state, output (recent terminal output), openPorts (list of listening ports), and waitForPort.
Example:
// Check if the server is running and see its output
const status = await getWorkflowStatus({ name: "Start application" });
console.log(`State: ${status.state}`);
if (status.output) {
console.log(`Output:\n${status.output}`);
}
if (status.openPorts) {
console.log(`Listening on ports: ${status.openPorts}`);
}
Configure or create a workflow. This is the primary way to set up background processes.
Parameters:
name (str, default "Start application"): Unique workflow identifiercommand (str, required): Shell command to executewaitForPort (int, optional): Port the process listens onoutputType (str, default "webview"): "webview", "console", or "vnc"autoStart (bool, default True): Auto-start after configurationisCanvasWorkflow (bool, default false): Whether this workflow serves canvas iframe contentOutput Type Rules:
Supported Ports: 3000, 3001, 3002, 3003, 4200, 5000 (webview only), 5173, 6000, 6800, 8000, 8008, 8080, 8099, 9000
Examples:
// Web application (React, Next.js, etc.)
await configureWorkflow({
name: "Start application",
command: "npm run dev",
waitForPort: 5000,
outputType: "webview"
});
// Backend API
await configureWorkflow({
name: "Backend API",
command: "python api.py",
waitForPort: 8000,
outputType: "console"
});
// Desktop application
await configureWorkflow({
name: "Desktop App",
command: "python gui_app.py",
outputType: "vnc"
});
Remove a workflow by name. Automatically stops it if running.
Parameters:
name (str, required): Name of the workflow to removeReturns: Dict with success, message, workflowName, and wasRunning
Example:
await removeWorkflow({ name: "Backend API" });
Restart a workflow by name.
Parameters:
workflowName (str, required): Name of the workflow (e.g., "Start application")timeout (int, default 30): Timeout in seconds to wait for restartReturns: Dict with restart status and optional screenshot URL
Example:
// Restart the main application
const result = await restartWorkflow({ workflowName: "Start application" });
console.log(result.message);
// Restart with custom timeout
const result2 = await restartWorkflow({
workflowName: "Start application",
timeout: 60
});
Restart after code changes: Always restart workflows after modifying server-side code
Use appropriate timeouts: Increase timeout for applications with slow startup
Check logs on failure: If restart fails, check workflow logs for error details
One restart at a time: Avoid parallel restarts of the same workflow
Port 5000 for web apps: Always use port 5000 with webview output type
Start application - Main application workflowStart Backend - Backend server (in Expo/mobile apps)Project - Parent workflow for multi-service appsThe workflow functions may raise errors in these cases:
Workflow not found: The specified workflow name doesn't exist
Port not opened: The application didn't start listening on expected port
Preview not available: The application endpoint isn't responding with HTTP 200
Workflow limit exceeded: Maximum of 10 workflows reached
Port/output type mismatch: Port 5000 requires webview, webview requires port 5000
When errors occur, check:
// Create a web application workflow
await configureWorkflow({
name: "Start application",
command: "npm run dev",
waitForPort: 5000,
outputType: "webview"
});
// After making code changes, restart the application
const result = await restartWorkflow({ workflowName: "Start application" });
if (result.success) {
console.log("Application restarted successfully");
if (result.screenshotUrl) {
console.log(`Screenshot: ${result.screenshotUrl}`);
}
} else {
console.log(`Restart failed: ${result.message}`);
}
// Clean up unused workflows
await removeWorkflow({ name: "Old Backend" });