feat(toolbox): update toolbox template configuration
- Update ToolboxStack/output/toolbox-template/.devcontainer/devcontainer.json with improved container settings - Update ToolboxStack/output/toolbox-template/PROMPT with enhanced instructions - Update ToolboxStack/output/toolbox-template/SEED with updated seed data - Update ToolboxStack/output/toolbox-template/docker-compose.yml with enhanced service definitions - Add ToolboxStack/output/toolbox-template/README.md with documentation This enhances the toolbox template for creating new developer environments.
This commit is contained in:
		
							
								
								
									
										107
									
								
								ToolboxStack/output/toolbox-template/README.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										107
									
								
								ToolboxStack/output/toolbox-template/README.md
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,107 @@ | ||||
| # 🧰 TSYSDevStack Toolbox Template | ||||
|  | ||||
| Template for creating new toolboxes that extend from the `toolbox-base` image. | ||||
|  | ||||
| --- | ||||
|  | ||||
| ## 🚀 Quick Start | ||||
|  | ||||
| 1. **Create a new toolbox** | ||||
|    ```bash | ||||
|    cp -r /path/to/toolbox-template /path/to/new-toolbox | ||||
|    cd /path/to/new-toolbox | ||||
|    ``` | ||||
|     | ||||
| 2. **Customize the toolbox** | ||||
|    - Edit `Dockerfile` to add toolbox-specific tooling | ||||
|    - Modify `docker-compose.yml` to adjust service configuration | ||||
|    - Update `SEED` to define the toolbox's purpose and goals | ||||
|     | ||||
| 3. **Build the toolbox** | ||||
|    ```bash | ||||
|    ./build.sh | ||||
|    ``` | ||||
|     | ||||
| 4. **Start the toolbox** | ||||
|    ```bash | ||||
|    ./run.sh up | ||||
|    ``` | ||||
|     | ||||
| 5. **Access the toolbox** | ||||
|    ```bash | ||||
|    docker exec -it tsysdevstack-toolboxstack-<toolbox-name> zsh | ||||
|    ``` | ||||
|     | ||||
| 6. **Stop the toolbox** | ||||
|    ```bash | ||||
|    ./run.sh down | ||||
|    ``` | ||||
|  | ||||
| --- | ||||
|  | ||||
| ## 🧱 Architecture | ||||
|  | ||||
| - **Base Image**: Extends from `tsysdevstack-toolboxstack-toolbox-base:release-current` | ||||
| - **User**: Runs as non-root `toolbox` user (UID/GID mapped to host) | ||||
| - **Workspace**: Mounts current directory to `/workspace` (read/write) | ||||
| - **Runtime**: Inherits all tooling from base plus toolbox-specific additions | ||||
|  | ||||
| --- | ||||
|  | ||||
| ## 🛠️ Customization | ||||
|  | ||||
| ### Dockerfile | ||||
| Extend the base image with toolbox-specific tooling: | ||||
| ```dockerfile | ||||
| # Extend from the toolbox-base image | ||||
| FROM tsysdevstack-toolboxstack-toolbox-base:release-current | ||||
|  | ||||
| # Add toolbox-specific packages or configurations | ||||
| RUN apt-get update && apt-get install -y --no-install-recommends \ | ||||
|     specific-package \ | ||||
|     && apt-get clean \ | ||||
|     && rm -rf /var/lib/apt/lists/* | ||||
| ``` | ||||
|  | ||||
| ### docker-compose.yml | ||||
| Adjust service configuration for toolbox-specific needs: | ||||
| ```yaml | ||||
| services: | ||||
|   my-toolbox: | ||||
|     # Inherits all base configuration | ||||
|     # Add toolbox-specific volumes, ports, etc. | ||||
|     volumes: | ||||
|       - ./custom-config:/home/toolbox/.config/custom-tool | ||||
| ``` | ||||
|  | ||||
| ### SEED | ||||
| Define the toolbox's purpose and goals: | ||||
| ```markdown | ||||
| - Describe what this toolbox should provide (languages, CLIs, workflows) | ||||
| - List required base image modifications or additional mounts | ||||
| - Note verification or testing expectations specific to this toolbox | ||||
| ``` | ||||
|  | ||||
| --- | ||||
|  | ||||
| ## 📂 Project Layout | ||||
|  | ||||
| | Path | Purpose | | ||||
| |------|---------| | ||||
| | `Dockerfile` | Extends base image with toolbox-specific tooling | | ||||
| | `docker-compose.yml` | Service configuration for the toolbox | | ||||
| | `build.sh` | Wrapper around `docker build` with host UID/GID mapping | | ||||
| | `run.sh` | Helper to bring the service up/down | | ||||
| | `.devcontainer/devcontainer.json` | VS Code remote container definition | | ||||
| | `SEED` | Defines the toolbox's purpose and goals | | ||||
| | `PROMPT` | LLM onboarding prompt for future contributors | | ||||
|  | ||||
| --- | ||||
|  | ||||
| ## 🤝 Collaboration Notes | ||||
|  | ||||
| - Inherits all collaboration policies from `toolbox-base` | ||||
| - Document toolbox-specific additions in `README.md` and `PROMPT` | ||||
| - Update `SEED` only when the high-level objectives change | ||||
| - Prefer aqua/mise for new tooling to keep installations reproducible | ||||
| - Keep documentation synchronized for future contributors | ||||
		Reference in New Issue
	
	Block a user