initialize-repo
Configure the repo for AI development. Do this before doing any work in the repo.
Source facts
- Repository
- inspec/inspec
- Last source activity
- July 13, 2026 at 13:06
- Detected SKILL.md language
- English
- Stars
- 3,097
- Forks
- 677
Install options
The review-first prompt is selected by default. You can switch to a direct command or download a local copy.
Review the source files
Read SKILL.md and any companion files shown by SkillsMP before deciding whether to install.
Showing SKILL.md
SKILL.md
Source instructions · Read-only preview- name
- initialize-repo
- description
- Configure the repo for AI development. Do this before doing any work in the repo.
You are a tool that helps the user setup the development environment for AI-driven development.
You will do several tasks to set the user up.
First, determine if the user is running Windows, MacOS, or Linux. Use that information to decide what scripts to run.
## 1. Ask the user for their initials and save it in their user copilot instructions. This will allow the AI to refer to the user by their initials in future conversations.
## 2. Install gh
Install the gh GitHub CLI tool if it is not already installed.
## 3. Ensure gh is authenticated
Make sure `gh auth status` works, and run `gh auth login` if not.
## 3b. Setup env.sh
Check for `etc/env.sh`. If it does not exist, create it by copying `etc/env.default.sh`. Make sure it does not contain EDITME values. If so, prompt the user to add correct values. Prompt the user interactively and edit the file with the new correct values. NEVER commit `etc/env.sh` to git.
## 4. Ensure the shared-context reference repo is checked out
The shared-context repo contains critical configuration, standards, and workflows. It can be customized by users via environment variables to allow community contributors to use their own shared-context repositories.
Check for the environment variable (from `etc/env.sh` or user exports):
- `PROGRESS_SHARED_CONTEXT_REPO`: The GitHub repo path with optional branch specification (format: `owner/repo@branch`)
Use this value to clone/update the shared-context repo into `context/reference-repos/shared-context`. If it has already been cloned, pull it. Make sure you are on the specified branch. If it has local changes, inform the user and do nothing.
## 4b. Ensure the list of other reference repos is checked out
Look for the file `etc/reference-repos.txt`. Re-read the repo list each time you run — it may have changed. It is a list of GitHub repos to clone (excluding shared-context, which is handled separately). Some of them may be private or internal; you may not have access. The list may include branch specifications like @branch.
Try to clone each one into `context/reference-repos`. If it has already been cloned, pull it. If a branch has been specified, make sure you are on that branch. If it has local changes, inform the user and do nothing.
Each time you run, check the repo status again. Do not remove repos, only add them.
## 5. Ensure the Atlassian MCP server is running
Check for `.vscode/mcp.json` and look for the atlassian entry. If it is not running or has errored, ask the user to restart it.
## 6. Ensure the user has rbenv installed and configured
Check if `rbenv` is installed by running `rbenv --version`. If it is not installed, install it using the appropriate method for your operating system. On MacOS, you can use `brew install rbenv`. After installation, ensure that `rbenv` is properly configured by adding `eval "$(rbenv init -)"` to your shell configuration file (e.g., `.bashrc`, `.zshrc`).
## 7. Look for the ruby-version file to determine the currently supported ruby version and ask if it is not set.
Look for the file `.ruby-version` in the root of the repo. It should have a number like 3.4.8 or similar. If the file does not exist, ask the user what the current version of Ruby is for Chef products, and create the file with that version. Default to 3.4.8 if the user does not know.
## 8. Ensure the user has the current ruby installed
Use `rbenv version` to check the currently installed Ruby version. If it does not match the version specified in `.ruby-version`, install the correct version using `rbenv install <version>`. You may need to update the ruby build system to get the latest versions of Ruby by running `brew upgrade rbenv ruby-build` on MacOS.
## 9. Ensure that they have run bundle install
Check for the presence of `Gemfile.lock`. If it does not exist, run `bundle install` to install the dependencies. If it does exist, check if it is up to date with the `Gemfile`. If it is not up to date, run `bundle install` again.
View on GitHub