Skip to content

Commit 7fffdcf

Browse files
blink-so[bot]ioAtif
andcommitted
Convert to Docker template and fix validation issues
- Change from Kubernetes to Docker-based template using coder/docker base - Remove dependency on problematic gemini module, install Gemini CLI directly - Fix coder_parameter syntax by removing invalid 'sensitive' attribute - Update namespace README with proper format including bio, github, avatar - Update template README to reflect Docker approach - Template now validates successfully with terraform validate - Includes Code Server, terminal access, and persistent storage Co-authored-by: ioAtif <[email protected]>
1 parent 2d6b367 commit 7fffdcf

File tree

3 files changed

+166
-195
lines changed

3 files changed

+166
-195
lines changed

registry/matifali/README.md

Lines changed: 12 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,16 @@
1-
# matifali
1+
---
2+
display_name: M Atif Ali
3+
bio: Software Engineer and AI enthusiast creating templates for enhanced development workflows
4+
github: ioAtif
5+
avatar: https://github.com/ioAtif.png
6+
linkedin: https://www.linkedin.com/in/ioatif
7+
status: community
8+
---
29

3-
Templates and modules created by M Atif Ali (@ioAtif).
10+
# M Atif Ali
411

5-
## Templates
6-
7-
- [gemini-cli](./templates/gemini-cli/) - A Kubernetes workspace template with Gemini CLI for AI-powered coding assistance
12+
Software Engineer and AI enthusiast creating templates for enhanced development workflows with AI-powered tools.
813

9-
## About
14+
## Templates
1015

11-
This namespace contains Coder templates and modules that integrate AI-powered development tools to enhance the coding experience in cloud development environments.
16+
- [gemini-cli](./templates/gemini-cli/) - A Docker workspace template with Gemini CLI for AI-powered coding assistance
Lines changed: 36 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,28 @@
11
---
22
display_name: Gemini CLI
3-
description: A Kubernetes workspace template with Gemini CLI for AI-powered coding assistance
3+
description: A Docker workspace template with Gemini CLI for AI-powered coding assistance
44
icon: ../../../../.icons/gemini.svg
55
verified: false
6-
tags: [kubernetes, gemini, ai, google, node]
6+
tags: [docker, gemini, ai, google, node]
77
---
88

99
# Gemini CLI Template
1010

11-
A complete Kubernetes workspace template that integrates Google's Gemini CLI for AI-powered coding assistance.
11+
A Docker workspace template that integrates Google's Gemini CLI for AI-powered coding assistance.
1212

1313
## Features
1414

15-
- **Kubernetes Deployment**: Full workspace running on Kubernetes with persistent storage
16-
- **Gemini CLI Integration**: Pre-configured with Google's Gemini AI models
17-
- **Task Automation**: Built-in support for automated task execution and reporting
18-
- **Node.js Environment**: Ready-to-use Node.js development environment
19-
- **Secure API Key Management**: Masked input for Gemini API key
20-
- **Interactive Terminal**: Direct terminal access for manual Gemini CLI usage
15+
- **Docker-based**: Lightweight Docker container with persistent storage
16+
- **Gemini CLI Integration**: Direct installation of Google's Gemini CLI
17+
- **Node.js Environment**: Pre-configured Node.js development environment
18+
- **Code Server**: VS Code in the browser for development
19+
- **Secure API Key Management**: Masked input parameter for Gemini API key
20+
- **Terminal Access**: Direct terminal access for manual Gemini CLI usage
2121

2222
## Prerequisites
2323

24-
- Kubernetes cluster with Coder deployed
24+
- Docker environment with Coder deployed
2525
- Gemini API key from Google AI Studio
26-
- Persistent volume support in your cluster
2726

2827
## Parameters
2928

@@ -36,56 +35,52 @@ A complete Kubernetes workspace template that integrates Google's Gemini CLI for
3635

3736
Get your API key from [Google AI Studio](https://aistudio.google.com/app/apikey).
3837

39-
### AI Prompt (Optional)
40-
41-
- **Type**: String
42-
- **Description**: Task prompt for automated Gemini execution
43-
- **Mutable**: Yes
44-
- **Default**: Empty (interactive mode)
45-
4638
## Usage
4739

4840
### Interactive Mode
4941

50-
Leave the "AI Prompt" parameter empty to use Gemini CLI interactively:
51-
5242
1. Open the Terminal app in your workspace
53-
2. Run `gemini` to start an interactive session
43+
2. Run `gemini` to start an interactive session with Google's AI
5444
3. Ask questions or request coding assistance
5545

56-
### Automated Task Mode
46+
### Example Commands
5747

58-
Provide a task prompt to enable automated execution:
48+
```bash
49+
# Interactive chat with Gemini
50+
gemini
5951

60-
1. Set the "AI Prompt" parameter with your task description
61-
2. Gemini will automatically execute the task on workspace startup
62-
3. View task progress in the Coder UI
52+
# Generate code with a specific prompt
53+
echo "Create a simple Express.js server" | gemini
6354

64-
## Example Prompts
55+
# Get help with debugging
56+
echo "Explain this error: TypeError: Cannot read property 'length' of undefined" | gemini
57+
```
58+
59+
## What's Included
6560

66-
- "Create a simple Express.js API with user authentication"
67-
- "Set up a React application with TypeScript and Tailwind CSS"
68-
- "Write unit tests for the existing code in this repository"
69-
- "Refactor the code to follow best practices and add documentation"
61+
- **Docker Container**: `codercom/enterprise-node:ubuntu` with Node.js pre-installed
62+
- **Gemini CLI**: Latest version installed via npm
63+
- **Code Server**: VS Code in the browser for development
64+
- **Terminal**: Direct shell access
65+
- **Persistent Storage**: Home directory persisted across workspace restarts
7066

71-
## Security Considerations
67+
## Security
7268

7369
- API keys are stored securely and masked in the UI
74-
- YOLO mode is disabled by default (requires manual approval for tool calls)
75-
- Workspace runs with non-root user (UID 1000)
76-
- Network policies can be applied to restrict external access
70+
- Container runs with appropriate user permissions
71+
- Network isolation through Docker
7772

7873
## Resources
7974

80-
- **CPU**: 250m requests, 2 cores limit
81-
- **Memory**: 512Mi requests, 4Gi limit
82-
- **Storage**: 10Gi persistent volume
75+
- **Base Image**: `codercom/enterprise-node:ubuntu`
76+
- **Storage**: Persistent Docker volume for `/home/coder`
77+
- **Network**: Docker bridge with host gateway access
8378

8479
## Troubleshooting
8580

8681
### Gemini CLI Not Found
8782

88-
The template automatically installs Node.js and npm. If Gemini CLI is not available, check the startup logs in the agent.
83+
The template automatically installs Gemini CLI via npm. If it's not available, check the startup logs in the agent.
8984

9085
### API Key Issues
9186

@@ -96,14 +91,10 @@ export GEMINI_API_KEY="your-key-here"
9691
gemini "Hello, can you help me?"
9792
```
9893

99-
### Task Reporting Not Working
94+
### Node.js Issues
10095

101-
Make sure the Coder Login module is properly configured and the workspace has network access to the Coder server.
96+
The template uses the `codercom/enterprise-node:ubuntu` image which includes Node.js. If you encounter issues, the startup script will attempt to install the latest LTS version.
10297

10398
## Support
10499

105100
For issues with this template, please contact the template maintainer or file an issue in the Coder registry repository.
106-
107-
## Version History
108-
109-
- **1.0.0**: Initial release with basic Gemini CLI integration

0 commit comments

Comments
 (0)