Project init
A reusable skill for starting projects with:
- Bun, Next.js App Router, TypeScript, React Compiler, and Tailwind.
- shadcn/ui components.
- Convex database and backend.
- Convex Auth with Google OAuth only.
- GitHub source hosting and Vercel deployments triggered by GitHub commits and pushes.
The skill asks for the Google OAuth Client ID and Client Secret, explains how to create them, and keeps secrets out of Git. It handles development and production configuration separately. It prepares and checks the app before publishing within the user's authorized scope.
This package contains instructions, not a prebuilt application or an installer that creates cloud resources. Each person uses their own GitHub, Convex, Vercel, and Google Cloud accounts. A local-only request stays local until publishing is authorized.
Install
bunx skills add marcbodea/project-init --skill init-project
Or use Node.js:
npx skills add marcbodea/project-init --skill init-project
The installer lets you select your coding agent. Add -g for installation across projects. For Codex only:
bunx skills add marcbodea/project-init --skill init-project -a codex -g
View the skill before installing.
Use the skill
After installing, start a chat in your intended project directory and say:
Use $init-project to create a customer portal for my business.
To authorize remote setup in that same request:
Use $init-project to create a customer portal. Create a private GitHub
repository under my account, connect it to Vercel, and deploy through
GitHub. Ask me for the Google OAuth client ID and secret when needed.
Share the ZIP
Send project-init.zip to someone. They can extract it, then ask Codex:
Install the init-project skill from the extracted
project-init/skills/init-project folder for my personal use.
For manual installation, copy that whole skill folder into the user's skill directory. The current documented location is ~/.agents/skills/init-project. A repository-specific alternative is .agents/skills/init-project. Keep the references and agents folders with SKILL.md. If the skill does not appear, restart Codex. Avoid installing duplicate copies of the same skill.
Share through GitHub
Share this repository:
https://github.com/marcbodea/project-init
Or send the install command above. The skill is also compatible with the skills.sh CLI. Per the skills.sh FAQ, leaderboard discovery happens through CLI installation telemetry; publishing a GitHub repository does not guarantee an immediate directory listing.
Codex users can also ask:
Use $skill-installer to install the skill from
https://github.com/marcbodea/project-init/tree/main/skills/init-project
Optional plugin distribution
The root plugin.json also packages the skill as a portable Agent Plugin. The included .agents/plugins/marketplace.json exposes it as a single-plugin marketplace. People using a supported Codex client can add the marketplace:
codex plugin marketplace add marcbodea/project-init
Then use the desktop Plugins Directory to select the Project Init marketplace and install the plugin. Adding a marketplace alone does not install the plugin. This local/Git marketplace route is separate from publishing to the public plugin directory. Plugin availability can vary by client. The folder-copy or skill-installer routes work without a plugin marketplace.
What the deployment rule means
Application code reaches preview or production through a GitHub commit and push. Vercel's Git build runs Convex deployment and the Next.js build. Direct CLI deployments, deployment APIs, hooks, and manual redeploys are excluded. Local Convex development sync and cloud configuration are allowed.
The generated project's AGENTS.md preserves this release path for future work. These are agent instructions, not an account-level restriction preventing a human or another tool from deploying manually.
Validation
The skill's structure and package files were checked locally. The workflow was reviewed against simulated setup requests. No application, OAuth client, remote repository, or live deployment was created to test this package. Validate the actual application flow when using the skill.