Agent skill

Forge Project Init

by yaomindong1996 in yaomindong1996/forge-admin

Bootstrap a new project from this Forge template end to end, or reset a Forge database into a clean template system.

Apache-2.0Auto-check: notesTesting & QA

Install Forge Project Init

skills CLI
$ npx skills add yaomindong1996/forge-admin --skill forge-project-init -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install yaomindong1996/forge-admin forge-project-init --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/yaomindong1996/forge-admin.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/forge-project-init .claude/skills/forge-project-init && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
forge-project-init
GitHub stars
125
Token cost
~1.9k tokens
SKILL.md length
808 words
Files
1
Skills in repo
4
Repo updated
First seen
Licence
Apache-2.0

At a glance

Bootstrap a new project from this Forge template end to end, or reset a Forge database into a clean template system.

  • Works in 4 steps: Generate code (forge:create) → Local config (in the generated project) → Clean database → …
  • The user wants to initialize/create a new project based on this repo
  • SKILL.md covers Purpose, Workflow, Rules and Maintenance
  • Calls pnpm, bash and docker

What it does

Forge Project Init is an agent skill from yaomindong1996/forge-admin. Bootstrap a new project from this Forge template end to end, or reset a Forge database into a clean template system. Use when the user wants to initialize/create a new project based on this repo, rename packages/artifacts/database via forge:create, choose module presets, configure backend/frontend env files, run full SQL then Flyway migrations, remove test data (logs, low-code apps and auto-created tables, test users/tenants/orgs/roles, flow data), start with an empty code-copilot/changes directory, or maintain…

Its SKILL.md is about 1.9k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Testing & QA, covering Database migrations, Test data and fixtures and SQL. It works with SQL and Docker. The repository describes itself as: AI编码,SpringBoot 3.x + JDK 17 构建的轻量化企业级管理系统基础框架,以配置驱动为核心设计理念,追求简洁高效、开箱即用,助力开发者快速搭建稳定可靠的企业级应用,极简开发、高效迭代、生产可用. The licence is Apache-2.0.

When your agent uses it

  • The user wants to initialize/create a new project based on this repo
  • Rename packages/artifacts/database via forge:create
  • Choose module presets
  • Configure backend/frontend env files

Example prompts

  • “/forge-project-init”

Requirements

  • Docker

Workflow steps

4 steps, taken from the step headings in SKILL.md.

  1. Generate code (forge:create)
  2. Local config (in the generated project)
  3. Clean database
  4. Verify

What it can do on your machine

Read from SKILL.md and the folder at commit 031f756. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • pnpm
    • bash
    • docker
    • mvn
    • git
    • node

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use pnpm, docker and git, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Forge Project Init loads about 1.9k tokens when it runs. Until then it costs about 152 tokens; SKILL.md has 808 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~152
When it runs · the whole SKILL.md, loaded when a task matches
~1.9k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NoteMentions a .env fileSKILL.md:39
    `forge_h5` becomes `<snake>_h5`, in the `.env` files and in `sys_client` in the full SQL.
  • NoteMentions a .env fileSKILL.md:46
    - `application-dev.yml`, `.env.local`, `docker-forge-admin/.env`;
  • NoteMentions a .env fileSKILL.md:56
    -admin-ui/.env.example <prefix>-admin-ui/.env.local
  • NoteMentions a .env fileSKILL.md:82
    `docker-<project>`, run `cp .env.example .env && docker compose up -d`. MySQL imports the full SQL; admin runs Flyway.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from yaomindong1996/forge-admin at commit 031f756, republished under its Apache-2.0 licence (© yaomindong1996). 808 words, ~1,930 tokens.

Download SKILL.mdSave it as .claude/skills/forge-project-init/SKILL.md (or your agent's skills folder).
name
forge-project-init
description
Bootstrap a new project from this Forge template end to end, or reset a Forge database into a clean template system. Use when the user wants to initialize/create a new project based on this repo, rename packages/artifacts/database via forge:create, choose module presets, configure backend/frontend env files, run full SQL then Flyway migrations, remove test data (logs, low-code apps and auto-created tables, test users/tenants/orgs/roles, flow data), start with an empty code-copilot/changes directory, or maintain scripts/forge-create, forge-server/scripts/db/init-db.sh and clean-db.sh.

Forge Project Init

Purpose

Turn this repository into a clean, independently developable project:

  • Code: renamed packages, artifacts and frontends, with only the selected modules.
  • Project context: AGENTS.md, .agents/skills, and code-copilot rules, memory and knowledge are kept. code-copilot/changes starts empty, with no history and no unarchived changes.
  • Database: only the default tenant, the super admin (with its role and root org), menus/permissions, dictionaries, configs, regions, job configs, built-in templates and the Flyway history table are kept.

Details of the database rules: code-copilot/changes/db-clean-template-init/spec.md in the template repo.

Workflow

1. Generate code (forge:create)

Run from the template repo root:

bash
pnpm forge:create -- ../<project-dir> \
  --preset full \
  --base-package com.company.project \
  --display-name 系统中文名 \
  [--java-name ProjectName] [--database-name project_db] [--include business-core]
  • Presets: minimal-admin, data-app, ai-report, full. See scripts/forge-create/module-catalog.json.
  • full includes admin UI, report UI, H5 (<project>-h5-ui) and Docker deploy (docker-<project>). Other presets can add them with --include h5-ui,docker; H5 pulls in app-server + flow-server, Docker pulls in admin-server + flow-server + admin UI.
  • Renames:
    • com.mdframe.forge becomes the new package / groupId.
    • forge-* artifacts and directories get the new prefix.
    • forge_admin becomes the new database name.
    • forge_schema_history becomes <snake>_schema_history, consistently in application.yml, the full SQL, the Flyway runner and clean-db.sh.
    • H5: /forge-h5 and /forge-h5-api become /<project>-h5 and /<project>-h5-api; the client ID forge_h5 becomes <snake>_h5, in the .env files and in sys_client in the full SQL.
    • Docker:
      • nginx.conf and Dockerfile.ui are rewritten to the generated admin public path and API prefix (defaults / and /api);
      • service, container and network names use the project name;
      • init-sql/01-init.sql is overwritten with the generated full SQL.
  • Not copied:
    • .git, node_modules, target, logs;
    • application-dev.yml, .env.local, docker-forge-admin/.env;
    • code-copilot/changes;
    • db/backup (old migrations already folded into the full SQL) and db/community-export.
  • Default: ask for the module preset, base package, display name and database name if the user has not given them. Do not guess.
2. Local config (in the generated project)
bash
cp <prefix>-server/<prefix>-admin-server/src/main/resources/application-dev.example.yml \
   <prefix>-server/<prefix>-admin-server/src/main/resources/application-dev.yml
cp <prefix>-admin-ui/.env.example <prefix>-admin-ui/.env.local
  • Fill in the MySQL and Redis settings.
  • If the flow server is included, copy its example config the same way. It uses the same database.
  • Never commit real passwords.
3. Clean database

Needs a mysql client, Maven and MySQL 8. Run from <prefix>-server:

bash
MYSQL_PWD=*** bash scripts/db/init-db.sh --database <db> --recreate --clean

This runs: recreate the database → full SQL → required seed → Flyway migrations → clean-db.sh.

Without Maven:

  1. Run init-db.sh --database <db> --recreate.
  2. Start the admin server once so Flyway migrates.
  3. Run clean-db.sh --database <db> to preview.
  4. Add --execute to clean.

With Docker:

  1. In docker-<project>, run cp .env.example .env && docker compose up -d. MySQL imports the full SQL; admin runs Flyway.
  2. Once admin is up, run MYSQL_PWD=*** bash <prefix>-server/scripts/db/clean-db.sh --host 127.0.0.1 --database <db> --execute.
  3. Run docker compose restart <module-prefix>-admin so caches reload.
4. Verify
  • mvn -pl <prefix>-admin-server -am compile -DskipTests, and pnpm install && pnpm build in the admin UI (and in the H5 UI if generated).
  • The database has one row each in sys_user, sys_tenant and sys_role. ACT_RU_TASK is empty. sys_job_config is not empty.
  • Start admin: Flyway reports the schema is up to date. admin / 123456 logs in, no low-code app menus appear, and a file upload works with local storage.
  • ls -a code-copilot/changes shows only .gitkeep.
  • Then run git init in the new project and make the first commit.
Show full SKILL.md (311 more words)Show less
Using the template repo directly (no rename)

Run only step 3 against a new database. Keep the template repo's own code-copilot/changes untouched unless the user explicitly asks to delete them there.

Rules

  • Order: cleanup must run after all migrations. V1.0.105, V1.0.107, V1.0.114 and V1.0.158 insert demo data. clean-db.sh refuses to run while migrations are pending.
  • Low-code menus:
    • Seed deletion from /ai/crud-page/% paths, ai:business:application:% perms and ai_crud_config.menu_resource_id.
    • Do this before truncating ai_crud_config.
    • Never seed from ai_lowcode_domain.menu_parent_id; it points at system directories.
  • Code-backed tables: tables referenced by @TableName or Mapper XML (sample_purchase_order, biz_leave_request, sys_employee, worker_node …) must be truncated, never dropped.
  • Flowable: keep ACT_GE_PROPERTY, ACT_ID_PROPERTY and the Flowable liquibase tables; truncate the other ACT_* / FLW_* tables.
  • Project-specific tweaks: use --extra-sql FILE, --keep-table, --drop-table or --keep-business-tables. Do not fork the scripts per project.
  • Passwords: pass them via MYSQL_PWD or --password. The scripts forward them with a temporary --defaults-extra-file, never on the mysql command line.
  • Destructive scope: clean-db.sh physically deletes data. Use it only on template or dev databases, and offer --backup-file first.
  • bash 3.2 compatibility (macOS /bin/bash):
    • no associative arrays, no mapfile, no ${var,,};
    • guard empty arrays under set -u;
    • write ${VAR} when a variable is directly followed by non-ASCII text.

Maintenance

  • New framework table holding runtime or test data: add it to TRUNCATE_REGEXES in clean-db.sh.
  • New built-in template table: add it to KEEP_EXACT_REGEX, or give it a selective rule in section 5 of the plan.
  • New migration that seeds demo data: make sure cleanup still removes it, and extend clean-db.test.mjs.
  • New template-only directory (history, exports, local artifacts): add it to ignoredTemplatePathPrefixes in scripts/forge-create/create-project.mjs.
  • Order of text replacements matters: specific prefixes (docker-forge-admin, /forge-h5) must come before generic ones (forge-admin/, VITE_PUBLIC_PATH=/forge).
  • Template's own docker-forge-admin/init-sql/01-init.sql: keep it byte-identical to forge-server/db/全量初始化SQL.sql.
  • After any change, run both checks:
    • cd forge-server/scripts/db && node --test init-db.test.mjs clean-db.test.mjs
    • generate a throwaway project with forge:create --preset full and run the same tests inside it.

© yaomindong1996, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .agents/skills/forge-project-init of yaomindong1996/forge-admin.

Open the folder on GitHubat commit 031f756

Compare with similar skills

Forge Project Init next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Forge Project Init compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Forge Project Init this skillyaomindong1996/forge-admin125—~1.9kAutomated safety check: NotesApache-2.0
Dummy Datasetkillvxk/pm-skills-zh167—~595Automated safety check: PassMIT
Evolving The Data ModelTriliumNext/Trilium38k—~2.1kAutomated safety check: PassAGPL-3.0
SQL Database Support for pRESTprest/prest4.6k—~1.6kAutomated safety check: PassMIT
StarRocks SQL Doc Auto-FixStarRocks/starrocks12k—~7.6kAutomated safety check: NotesApache-2.0
Cursor BYOK Database Schemaleookun/cursor-byok3.2k—~1.3kAutomated safety check: PassMIT

Similar skills

  • Dummy Dataset

    killvxk/pm-skills-zh

    生成用于测试的逼真虚拟数据集,支持自定义列、约束条件及输出格式(CSV、JSON、SQL、Python 脚本)。适用于创建测试数据、构建模拟数据集,或为开发和演示生成示例数据。

    167 GitHub stars~595 tokensUpdated 6 mo ago
    DatabasesAuto-check passed
  • Evolving The Data Model

    TriliumNext/Trilium

    A skill your agent uses when adding a DB migration or a new column/field to a Becca entity in Trilium ("add a migration", "new column on notes/attributes", "ALTER TABLE", "add a field to…

    38k GitHub stars~2.1k tokensUpdated today
    DatabasesAuto-check passed
  • Guides classifying, gap-analyzing and scaffolding support for a new SQL database in pREST, from Postgres-compatible variants to entirely new dialects.

    4.6k GitHub stars~1.6k tokensUpdated yesterday
    DatabasesAuto-check passed
  • StarRocks SQL Doc Auto-Fix

    StarRocks/starrocks

    Proposes verified fixes for failing SQL examples in StarRocks docs across three languages and several versions, then opens draft pull requests and never merges.

    12k GitHub stars~7.6k tokensUpdated today
    DatabasesAuto-check: notes
  • Cursor BYOK Database Schema

    leookun/cursor-byok

    Guides SQLite schema changes in the Cursor BYOK server, keeping SQLx migrations, the Rust store, API contracts and fixtures aligned.

    3.2k GitHub stars~1.3k tokensUpdated today
    DatabasesAuto-check passed
  • Diesel Guard

    ayarotsky/diesel-guard

    Lints Diesel and SQLx Postgres migrations for unsafe schema changes that lock tables or cause downtime, and authors custom Rhai checks.

    121 GitHub stars~3.1k tokensUpdated 11 days ago
    DatabasesAuto-check passed

More from yaomindong1996/forge-admin

  • Web Content Fetcher

    yaomindong1996/forge-admin

    Extract article content from any URL as clean Markdown. An agent skill from yaomindong1996/forge-admin.

    125 GitHub stars~898 tokensUpdated today
    Auto-check passed
  • Forge Business Flow Development

    yaomindong1996/forge-admin

    Develop Forge business approval workflows backed by Flowable, using the current sample purchase order approval as the reference.

    125 GitHub stars~1.3k tokensUpdated today
    Auto-check passed
  • Forge Codegen Crud

    yaomindong1996/forge-admin

    Generate or review Forge project code-generation output for CRUD modules.

    125 GitHub stars~1.3k tokensUpdated today
    Auto-check passed

Works with

Questions about Forge Project Init

What does Forge Project Init do?

Bootstrap a new project from this Forge template end to end, or reset a Forge database into a clean template system. Forge Project Init is an agent skill from yaomindong1996/forge-admin. Bootstrap a new project from this Forge template end to end, or reset a Forge database into a clean template system.

When should I use Forge Project Init?

Forge Project Init fits situations like: the user wants to initialize/create a new project based on this repo; rename packages/artifacts/database via forge:create; choose module presets; configure backend/frontend env files.

How do I install Forge Project Init in Claude Code?

Run `npx skills add yaomindong1996/forge-admin --skill forge-project-init -a claude-code`. Or copy the skill folder (.agents/skills/forge-project-init in yaomindong1996/forge-admin) into .claude/skills/forge-project-init in your project. Claude Code loads it when a task matches its description.

How do I install Forge Project Init in Codex?

Run `npx skills add yaomindong1996/forge-admin --skill forge-project-init -a codex`. Or copy the skill folder (.agents/skills/forge-project-init in yaomindong1996/forge-admin) into .agents/skills/forge-project-init in your project. Codex loads it when a task matches its description.

Can I use Forge Project Init in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add yaomindong1996/forge-admin --skill forge-project-init -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/forge-project-init, .gemini/skills/forge-project-init, .github/skills/forge-project-init and .opencode/skills/forge-project-init in your project.

What does Forge Project Init need to run?

Going by SKILL.md and its folder, Forge Project Init needs the command-line tools its instructions call (pnpm, bash, docker, mvn, git and node). Our summary lists: Docker.

Does Forge Project Init access the network?

SKILL.md contains no URLs. Its commands use docker and git, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Forge Project Init safe to install?

Our automated static check of SKILL.md found notes only (mentions a .env file), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.

What licence does Forge Project Init use?

Forge Project Init is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Forge Project Init use?

About 1.9k tokens (SKILL.md is roughly 7.7k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Forge Project Init?

Skills that share tags, products or a category with Forge Project Init: Dummy Dataset (killvxk/pm-skills-zh, 167 stars), Evolving The Data Model (TriliumNext/Trilium, 38k stars), SQL Database Support for pREST (prest/prest, 4.6k stars) and StarRocks SQL Doc Auto-Fix (StarRocks/starrocks, 12k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Forge Project Init?

yaomindong1996 (a GitHub user) maintains it in yaomindong1996/forge-admin, which has 125 GitHub stars. The repository holds 4 skills in this directory. The repository was last updated on October 9, 2026.

Source: yaomindong1996/forge-admin on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.