You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat(workflows): add community workflows showcase (#96)
This commit introduces the initial structure for collecting and
showcasing community-contributed workflows.
It adds an AWESOME.md file to house the collection and updates the main
workflows README to point to it.
This is a starting point to encourage community sharing. Future work may
involve creating a more comprehensive `awesome-gemini-cli`, but this is
focused on workflows only for now.
Preview:
https://github.com/google-github-actions/run-gemini-cli/tree/feat/community-workflows/examples/workflows
cc @sethvargo
Welcome to our collection of awesome community-contributed workflows! This page showcases creative and powerful implementations of the [Google Gemini CLI GitHub Action](https://github.com/google-github-actions/run-gemini-cli) created by the community.
4
+
5
+
**Want to add your workflow?** Check out the [submission guidelines](./README.md#share-your-workflow) in our main README.
6
+
7
+
> **⚠️ Security Notice**: Always review and understand any workflow before using it in your repository. Community-contributed workflows are provided as-is and have not been security audited. Verify the code, permissions, and any external dependencies before implementation.
8
+
9
+
-[Awesome Workflows](#awesome-workflows)
10
+
-[Workflow Categories](#workflow-categories)
11
+
-[🔍 Code Quality](#-code-quality)
12
+
-[📋 Project Management](#-project-management)
13
+
-[📝 Documentation](#-documentation)
14
+
-[🛡️ Security](#️-security)
15
+
-[🧪 Testing](#-testing)
16
+
-[🚀 Deployment \& Release](#-deployment--release)
17
+
-[🎯 Specialized Use Cases](#-specialized-use-cases)
18
+
-[Featured Workflows](#featured-workflows)
19
+
20
+
## Workflow Categories
21
+
22
+
Browse workflows by category to find exactly what you're looking for.
23
+
24
+
### 🔍 Code Quality
25
+
26
+
Workflows that help maintain code quality, perform analysis, or enforce standards.
27
+
28
+
*No workflows yet. Be the first to contribute!*
29
+
30
+
### 📋 Project Management
31
+
32
+
Workflows that help manage GitHub issues, projects, or team collaboration.
33
+
34
+
*No workflows yet. Be the first to contribute!*
35
+
36
+
### 📝 Documentation
37
+
38
+
Workflows that generate, update, or maintain documentation automatically.
39
+
40
+
*No workflows yet. Be the first to contribute!*
41
+
42
+
### 🛡️ Security
43
+
44
+
Workflows focused on security analysis, vulnerability detection, or compliance.
45
+
46
+
*No workflows yet. Be the first to contribute!*
47
+
48
+
### 🧪 Testing
49
+
50
+
Workflows that enhance testing processes, generate test cases, or analyze test results.
51
+
52
+
*No workflows yet. Be the first to contribute!*
53
+
54
+
### 🚀 Deployment & Release
55
+
56
+
Workflows that handle deployment, release management, or publishing tasks.
57
+
58
+
*No workflows yet. Be the first to contribute!*
59
+
60
+
### 🎯 Specialized Use Cases
61
+
62
+
Unique or domain-specific workflows that showcase creative uses of Gemini CLI.
63
+
64
+
*No workflows yet. Be the first to contribute!*
65
+
66
+
## Featured Workflows
67
+
68
+
*Coming soon!* This section will highlight particularly innovative or popular community workflows.
69
+
70
+
---
71
+
72
+
*Want to see your workflow featured here? Check out our [submission guidelines](./README.md#share-your-workflow)!*
Gemini CLI workflows are highly configurable. You can adjust their behavior by editing the corresponding `.yml` files in your repository.
17
+
18
+
Gemini CLI supports many settings that control how it operates. For a complete list, see the [Gemini CLI documentation](https://github.com/google-gemini/gemini-cli/blob/main/docs/cli/configuration.md#available-settings-in-settingsjson).
19
+
20
+
### Key Settings
21
+
22
+
#### Conversation Length (`maxSessionTurns`)
23
+
24
+
This setting controls the maximum number of conversational turns (messages exchanged) allowed during a workflow run.
Add the following to your workflow YAML file to set a custom value:
37
+
38
+
```yaml
39
+
with:
40
+
settings: |-
41
+
{
42
+
"maxSessionTurns": 10
43
+
}
44
+
```
45
+
46
+
### Custom Context and Guidance (`GEMINI.md`)
47
+
48
+
To provide Gemini CLI with custom instructions—such as coding conventions, architectural patterns, or other guidance—add a `GEMINI.md` file to the root of your repository. Gemini CLI will use the content of this file to inform its responses.
49
+
50
+
## GitHub Actions Workflow Settings
51
+
52
+
### Setting Timeouts
53
+
54
+
You can control how long Gemini CLI runs by using either the `timeout-minutes` field in your workflow YAML, or by specifying a timeout in the `settings` input.
55
+
56
+
### Required Permissions
57
+
58
+
Only users with the following roles can trigger the workflow:
@@ -33,62 +27,61 @@ To use a workflow, you can utilize either of the following steps:
33
27
34
28
Gemini CLI workflows are highly configurable. You can adjust their behavior by editing the corresponding `.yml` files in your repository.
35
29
36
-
### How to Configure Gemini CLI
30
+
For detailed configuration options, including Gemini CLI settings, timeouts, and permissions, see our [Configuration Guide](./CONFIGURATION.md).
37
31
38
-
Gemini CLI supports many settings that control how it operates. For a complete list, see the [Gemini CLI documentation](https://github.com/google-gemini/gemini-cli/blob/main/docs/cli/configuration.md#available-settings-in-settingsjson).
32
+
## Awesome Workflows
39
33
40
-
#### Key Settings
34
+
Discover awesome workflows created by the community! These are publicly available workflows that showcase creative and powerful uses of the Gemini CLI GitHub Action.
41
35
42
-
##### Conversation Length (`maxSessionTurns`)
36
+
👉 **[View all Awesome Workflows](./AWESOME.md)**
43
37
44
-
This setting controls the maximum number of conversational turns (messages exchanged) allowed during a workflow run.
38
+
### Share Your Workflow
45
39
46
-
**Default values by workflow:**
40
+
Have you created an awesome workflow using Gemini CLI? We'd love to feature it in our [Awesome Workflows](./AWESOME.md) page!
1.**Ensure your workflow is public** and well-documented
44
+
2.**Fork this repository** and create a new branch
45
+
3.**Add your workflow** to the appropriate category section in [AWESOME.md](./AWESOME.md) using the [workflow template](./AWESOME.md#workflow-template)
46
+
- If none of the existing categories fit your workflow, feel free to propose a new category
47
+
4.**Open a pull request** with your addition
48
+
5.**Include a brief summary** in your PR description of what your workflow does and why it's awesome
53
49
54
-
**How to override:**
50
+
**What makes a workflow "awesome"?**
51
+
- Solves a real problem or provides significant value
52
+
- Is well-documented with clear setup instructions
53
+
- Follows best practices for security and performance
54
+
- Has been tested and is actively maintained
55
+
- Includes example configurations or use cases
55
56
56
-
Add the following to your workflow YAML file to set a custom value:
57
+
**Note:** This process is specifically for sharing community workflows. We also recommend reading our [CONTRIBUTING.md](../../CONTRIBUTING.md)file for general contribution guidelines and best practices that apply to all pull requests.
57
58
58
-
```yaml
59
-
with:
60
-
settings: |-
61
-
{
62
-
"maxSessionTurns": 10
63
-
}
64
-
```
65
-
66
-
#### Custom Context and Guidance (`GEMINI.md`)
67
-
68
-
To provide Gemini CLI with custom instructions—such as coding conventions, architectural patterns, or other guidance—add a `GEMINI.md` file to the root of your repository. Gemini CLI will use the content of this file to inform its responses.
69
-
70
-
### GitHub Actions Workflow Settings
59
+
**Workflow Template:**
71
60
72
-
#### Setting Timeouts
61
+
When adding your workflow to [AWESOME.md](./AWESOME.md), use this format:
73
62
74
-
You can control how long Gemini CLI runs by using either the `timeout-minutes` field in your workflow YAML, or by specifying a timeout in the `settings` input.
Brief description of what the workflow does and its key features.
77
70
78
-
Only users with the following roles can trigger the workflow:
71
+
**Key Features:**
72
+
- Feature 1
73
+
- Feature 2
74
+
- Feature 3
79
75
80
-
- Repository Owner (`OWNER`)
81
-
- Repository Member (`MEMBER`)
82
-
- Repository Collaborator (`COLLABORATOR`)
76
+
**Setup Requirements:**
77
+
-Requirement 1
78
+
-Requirement 2 (if any)
83
79
84
-
## Contributing
80
+
**Example Use Cases:**
81
+
- Use case 1
82
+
- Use case 2
85
83
86
-
We encourage you to contribute to this collection of workflows! If you have a workflow that you would like to share with the community, please open a pull request.
87
-
88
-
When contributing, please follow these guidelines. For more information on contributing to the project as a whole, please see the [CONTRIBUTING.md](../../CONTRIBUTING.md) file.
89
-
90
-
* Create a new directory for your workflow.
91
-
* Include a `README.md` file that explains how to use your workflow.
92
-
* Add your workflow to the list of available workflows in this `README.md` file.
84
+
**Workflow File:**[View on GitHub](https://github.com/<owner>/<repo>/blob/main/.github/workflows/<workflow-name>.yml)
85
+
```
93
86
94
-
We look forward to seeing what you build!
87
+
Browse our [Awesome Workflows](./AWESOME.md) page to see what the community has created!
0 commit comments