Run any Skill in Manus
with one click
with one click
Run any Skill in Manus with one click
Get Started$pwd:
$ git log --oneline --stat
stars:914
forks:138
updated:January 22, 2026 at 00:17
SKILL.md
Parse table definition to extract module name, model name, table name, and field definitions. First step of CRUD generation.
Generate Eloquent model for CatchAdmin module with full CatchModel features.
Generate CRUD controller for CatchAdmin module.
Generate form request validation for CatchAdmin module.
Generate route configuration for CatchAdmin module.
Generate Excel export class for CatchAdmin module.
| name | migration |
| description | Generate database migration file for CatchAdmin module. |
创建数据库迁移文件。
modules/{Module}/database/migrations/{timestamp}_create_{table}_table.php
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration
{
public function up(): void
{
Schema::create('{table}', function (Blueprint $table) {
$table->id();
// Business fields (generated from definition)
// CatchAdmin standard fields
$table->unsignedInteger('creator_id')->default(0);
$table->unsignedInteger('created_at')->default(0);
$table->unsignedInteger('updated_at')->default(0);
$table->unsignedInteger('deleted_at')->default(0);
// Indexes
$table->index(['status', 'deleted_at']);
});
}
public function down(): void
{
Schema::dropIfExists('{table}');
}
};
| Type | Migration Code |
|---|---|
| string(n) | $table->string('name', n) |
| text | $table->text('description')->nullable() |
| integer | $table->unsignedInteger('count')->default(0) |
| decimal(m,n) | $table->decimal('price', m, n) |
| tinyint | $table->tinyInteger('status')->default(1) |
| foreign_key | $table->unsignedBigInteger('category_id')->default(0)->index() |
| date | $table->date('birth_date')->nullable() |
| datetime | $table->dateTime('published_at')->nullable() |
| json | $table->json('options')->nullable() |
timestamps()deleted_at unsigned integer,不使用 softDeletes()index()