A Docker-based action with Node.js 22 and npm pre-installed for optimal performance
Add the action to your workflow:
name: iFlow CLI Example
on: [push]
jobs:
analyze-code:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Run iFlow CLI
uses: vibe-ideas/iflow-cli-action@v1.2.0
with:
prompt: "Analyze this codebase and suggest improvements"
api_key: $\{{ secrets.IFLOW_API_KEY }}
name: iFlow CLI Example
on: [push]
jobs:
analyze-code:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Run iFlow CLI
uses: vibe-ideas/iflow-cli-action@v1.2.0
with:
prompt: "Analyze this codebase and suggest improvements"
api_key: $\{{ secrets.IFLOW_API_KEY }}
name: Advanced iFlow CLI Usage
on:
pull_request:
types: [opened, synchronize]
jobs:
code-review:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Initialize Project Analysis
uses: vibe-ideas/iflow-cli-action@v1.2.0
with:
prompt: "/init"
api_key: $\{{ secrets.IFLOW_API_KEY }}
model: "Qwen3-Coder"
timeout: "600"
working_directory: "."
- name: Generate Technical Documentation
uses: vibe-ideas/iflow-cli-action@v1.2.0
with:
prompt: "Generate technical documentation based on the codebase analysis"
api_key: $\{{ secrets.IFLOW_API_KEY }}
base_url: "https://apis.iflow.cn/v1"
model: "DeepSeek-V3"
id: docs
- name: Display Results
run: |
echo "Documentation generated:"
echo "$\{{ steps.docs.outputs.result }}"
Input | Description | Required | Default |
---|---|---|---|
prompt |
The prompt to execute with iFlow CLI | ✅ Yes | - |
api_key |
iFlow API key for authentication | ✅ Yes | - |
settings_json |
Complete iFlow settings.json content (JSON string) | ❌ No | - |
base_url |
Custom base URL for iFlow API | ❌ No | https://apis.iflow.cn/v1 |
model |
Model name to use | ❌ No | Qwen3-Coder |
working_directory |
Working directory to run iFlow CLI from | ❌ No | . |
timeout |
Timeout for iFlow CLI execution in seconds (1-86400) | ❌ No | 86400 |
extra_args |
Additional command line arguments to pass to iFlow CLI | ❌ No |
|
Output | Description |
---|---|
result |
Output from iFlow CLI execution |
exit_code |
Exit code from iFlow CLI execution |
IFLOW_API_KEY
Qwen3-Coder
(default) - Excellent for code analysis and generationKimi-K2
- Good for general AI tasks and longer contextsDeepSeek-V3
- Advanced reasoning and problem-solving- name: iFlow with Custom Arguments
uses: vibe-ideas/iflow-cli-action@v1.2.0
with:
prompt: "Analyze this codebase with debug output"
api_key: $\{{ secrets.IFLOW_API_KEY }}
extra_args: "--debug --max-tokens 3000"
- name: Custom iFlow Configuration
uses: vibe-ideas/iflow-cli-action@v1.2.0
with:
prompt: "Analyze this codebase with custom configuration"
api_key: $\{{ secrets.IFLOW_API_KEY }}
settings_json: |
{
"theme": "Dark",
"selectedAuthType": "iflow",
"apiKey": "$\{{ secrets.IFLOW_API_KEY }}",
"baseUrl": "https://custom-api.example.com/v1",
"modelName": "custom-model",
"searchApiKey": "$\{{ secrets.SEARCH_API_KEY }}",
"customField": "customValue"
}
MCP (Model Context Protocol) allows iFlow CLI to connect to external tools and services.
- name: iFlow CLI with MCP Server
uses: vibe-ideas/iflow-cli-action@v1.2.0
with:
prompt: "use @deepwiki to search how to use Skynet to build a game"
api_key: $\{{ secrets.IFLOW_API_KEY }}
settings_json: |
{
"selectedAuthType": "iflow",
"apiKey": "$\{{ secrets.IFLOW_API_KEY }}",
"baseUrl": "https://apis.iflow.cn/v1",
"modelName": "Qwen3-Coder",
"searchApiKey": "$\{{ secrets.IFLOW_API_KEY }}",
"mcpServers": {
"deepwiki": {
"command": "npx",
"args": ["-y", "mcp-deepwiki@latest"]
}
}
}
model: "Qwen3-Coder"
timeout: "1800"
extra_args: "--debug"
- name: Code Review
uses: vibe-ideas/iflow-cli-action@v1.2.0
with:
prompt: "Review this pull request for code quality, security issues, and best practices"
api_key: $\{{ secrets.IFLOW_API_KEY }}
- name: Generate Documentation
uses: vibe-ideas/iflow-cli-action@v1.2.0
with:
prompt: "/init && Generate comprehensive API documentation"
api_key: $\{{ secrets.IFLOW_API_KEY }}
timeout: "600"
timeout
value for complex operationsContributions are welcome! Please feel free to submit issues and pull requests.
This project is licensed under the MIT License - see the LICENSE file for details.