Discord Php Interactions
discord-php/DiscordPHP
Build DiscordPHP slash commands and message components — global command trees with subcommands, user- AND guild-installable commands usable in DMs / group DMs / guild channels, Components V2…
baserCMS 5系(CakePHP 5ベース)のテーマを新規開発・改修する際の正本パターン集。「テーマを作成」「テーマプラグインの構造」「layout/element の書き方」「固定ページテンプレート($page-contents)」「ウィジェット element の配置(element/widget)」「メールフォームテンプレート(createMailForm /…
$ npx skills add baserproject/basercms --skill basercms5-theme-development -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install baserproject/basercms basercms5-theme-development --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/baserproject/basercms.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/basercms5-theme-development .claude/skills/basercms5-theme-development && rm -rf skills-srcUse ~/.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/
Install the "basercms5-theme-development" agent skill from https://github.com/baserproject/basercms/tree/5.4.x/.agents/skills/basercms5-theme-development into .claude/skills/basercms5-theme-development/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "basercms5-theme-development", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/baserproject/basercms/tree/5.4.x/.agents/skills/basercms5-theme-developmentType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add baserproject/basercms --skill basercms5-theme-development -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install baserproject/basercms basercms5-theme-development --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/baserproject/basercms.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/basercms5-theme-development .agents/skills/basercms5-theme-development && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "basercms5-theme-development" agent skill from https://github.com/baserproject/basercms/tree/5.4.x/.agents/skills/basercms5-theme-development into .agents/skills/basercms5-theme-development/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "basercms5-theme-development", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add baserproject/basercms --skill basercms5-theme-development -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install baserproject/basercms basercms5-theme-development --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/baserproject/basercms.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/basercms5-theme-development .cursor/skills/basercms5-theme-development && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "basercms5-theme-development" agent skill from https://github.com/baserproject/basercms/tree/5.4.x/.agents/skills/basercms5-theme-development into .cursor/skills/basercms5-theme-development/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "basercms5-theme-development", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/baserproject/basercms.git --path .agents/skills/basercms5-theme-development--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add baserproject/basercms --skill basercms5-theme-development -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install baserproject/basercms basercms5-theme-development --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/baserproject/basercms.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/basercms5-theme-development .gemini/skills/basercms5-theme-development && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "basercms5-theme-development" agent skill from https://github.com/baserproject/basercms/tree/5.4.x/.agents/skills/basercms5-theme-development into .gemini/skills/basercms5-theme-development/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "basercms5-theme-development", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install baserproject/basercms basercms5-theme-developmentInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add baserproject/basercms --skill basercms5-theme-development -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/baserproject/basercms.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/basercms5-theme-development .github/skills/basercms5-theme-development && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "basercms5-theme-development" agent skill from https://github.com/baserproject/basercms/tree/5.4.x/.agents/skills/basercms5-theme-development into .github/skills/basercms5-theme-development/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "basercms5-theme-development", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add baserproject/basercms --skill basercms5-theme-development -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install baserproject/basercms basercms5-theme-development --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/baserproject/basercms.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/basercms5-theme-development .opencode/skills/basercms5-theme-development && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "basercms5-theme-development" agent skill from https://github.com/baserproject/basercms/tree/5.4.x/.agents/skills/basercms5-theme-development into .opencode/skills/basercms5-theme-development/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "basercms5-theme-development", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
basercms5-theme-developmentbaserCMS 5系(CakePHP 5ベース)のテーマを新規開発・改修する際の正本パターン集。「テーマを作成」「テーマプラグインの構造」「layout/element の書き方」「固定ページテンプレート($page-contents)」「ウィジェット element の配置(element/widget)」「メールフォームテンプレート(createMailForm /…
Basercms5 Theme Development is an agent skill from baserproject/basercms. baserCMS 5系(CakePHP 5ベース)のテーマを新規開発・改修する際の正本パターン集。「テーマを作成」「テーマプラグインの構造」「layout/element の書き方」「固定ページテンプレート($page-contents)」「ウィジェット element の配置(element/widget)」「メールフォームテンプレート(createMailForm / mailFormControl 等 BcBaser の mailForm 系)」「ブログテンプレート(posts/single・getEyeCatch・posted)」「BcBaser ヘルパの委譲機構(methods())」「css()/js() の $inline」「getUrl でのURL生成」「currentContent/currentSite」「BcUtil::loginUser」「BcSiteConfig::get」「テーマの webroot アセット配信」等で参照する。共通ルールは basercms5-development、プラグイン内部コード(Controller/Table)は…
Its SKILL.md is about 2.7k 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 Agent Workflows, covering Hooks and plugins. It works with PHP. The repository describes itself as: baserCMS : Based Website Development Project. The licence is MIT.
7 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 748b4f6. It shows what the files ask for, not the result of running them.
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.
No scripts in the folder and no shell commands in SKILL.md (its code samples are php).
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Basercms5 Theme Development loads about 2.7k tokens when it runs. Until then it costs about 149 tokens; SKILL.md has 397 words of instructions outside code blocks.
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.
The automated check found no risky patterns in SKILL.md.
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.
The full file from baserproject/basercms at commit 748b4f6, republished under its MIT licence (© baserproject). 397 words, ~2,658 tokens.
.claude/skills/basercms5-theme-development/SKILL.md (or your agent's skills folder).本スキルの対象は baserCMS 5系(CakePHP 5ベース)におけるテーマの新規開発・改修。5系のテーマはプラグイン形式であり、plugins/<ThemeName>/ に配置してテンプレート(templates/)・アセット(webroot/)・少数のフロント表示用 Helper(src/View/Helper/)で構成する。環境・ディレクトリ・命名・コアハック禁止などの共通ルールは basercms5-development、テーマに Controller/Table などプラグイン相当の内部コードを持たせる場合は basercms5-plugin-development、4系テーマからの移行作業は basercms-theme-4-to-5-upgrade を参照する。
テーマは以下のディレクトリ構成で作る(コアの参考実装: vendor/baserproject/bc-front/templates/、サンプル: plugins/BcThemeSample/)。
plugins/<ThemeName>/
├── config.php … テーマ情報(return 配列。'type' => 'Theme' 必須)
├── src/<ThemeName>Plugin.php … プラグインクラス(bake 生成の雛形でよい)
├── src/View/Helper/ … テーマ独自のフロント表示用 Helper(任意)
├── templates/
│ ├── layout/ … レイアウト(default.php 等)
│ ├── element/ … 共通エレメント(header.php / footer.php 等)
│ ├── element/widget/ … ウィジェット用 element(§5)
│ ├── Pages/ … 固定ページテンプレート(default.php 等)
│ ├── Blog/<content>/ … ブログテンプレート(posts.php / index.php / single.php / archives.php)
│ └── Mail/<content>/ … メールフォームテンプレート(index.php / confirm.php / submit.php)
└── webroot/ … css / js / img(テーマアセット)config.php は return ['type' => 'Theme', 'title' => ..., 'description' => ..., 'author' => ..., 'url' => ...]; の形式で書く。templates/layout/default.php では本文を $this->fetch('content') で出力し、<head> 内は $this->BcBaser->charset() / title() / metaDescription() / css() / js() / scripts()、</body> 直前で $this->BcBaser->func() 等の BcBaser API を使って組み立てる。templates/Pages/default.php は、管理画面で編集された本文を echo $page->contents で出力する($page は Page エンティティ)。templates/Blog/<コンテンツのテンプレート名>/posts.php のように「機能プラグイン名/テンプレート名/アクション名」で配置し、管理画面のコンテンツ設定で選択されたテンプレート名のディレクトリが使われる。テーマに無いテンプレートはコア(bc-front/templates/plugin/BcBlog/ plugin/BcMail/ 等)へフォールバックする。webroot/ 配下のアセットは /テーマ名snake形式/css/style.css のような URL(プラグイン webroot 配信)で配信される(§4)。sites テーブルの theme カラムを UPDATE してキャッシュクリア(bin/cake cache clear_all)する。layout / element / テンプレート内の $this は View 自身である。Helper 内の $this->getView() と混同しない(View で $this->getView() を呼ぶと Call to undefined method ...View::getView())。
コントローラが供給するビュー変数に依存せず、テンプレート側で必要な値を自前で導出するのが基本。コアはフロントの全ビューへ $user 等のグローバル変数を供給しない。
// ログインユーザー(UserInterface|false — false があり得るので必ず判定する)
$user = \BaserCore\Utility\BcUtil::loginUser();
$authPrefixes = $user ? $user->getAuthPrefixes() : [];
// 現在のプレフィックス(Front / Admin など)
$currentPrefix = \BaserCore\Utility\BcUtil::getRequestPrefix($this->getRequest());
// セッション
$session = $this->getRequest()->getSession();現在のコンテンツ・サイト情報はリクエスト属性から取る。どちらもエンティティで、コンテキストによっては null があり得るため ?-> で参照する。
$currentContent = $this->getRequest()->getAttribute('currentContent'); // Content エンティティ|null
$currentSite = $this->getRequest()->getAttribute('currentSite'); // Site エンティティ|null
$entityId = $currentContent?->entity_id; // 機能側レコードID(ブログコンテンツID 等)
$siteId = $currentSite?->id;現在のURLパスは $this->getRequest()->getPath() と書く(先頭スラッシュ付きで返る)。
$this->BcBaser->blogPosts('news', 5) のような機能系ショートカットは、BcBaserHelper 自体のメソッドではなく、各プラグインの Bc<Plugin>BaserHelper::methods() が返すマッピングテーブル経由で __call に委譲される(例: bc-blog の BcBlogBaserHelper::methods() に 'blogPosts' => ['Blog', 'posts'])。
grep -rln "function <名前>" vendor/baserproject/ で関数定義を探す → ②見つからなければ grep -rn "'<名前>'" vendor/baserproject/*/src/View/Helper/Bc*BaserHelper.php で methods() マッピングを探す。マッピング委譲のため関数定義が無いのが正常であり、①だけで「存在しない」と判定しない。\BaserCore\Utility\BcSiteConfig::get('formal_name'); // サイト基本設定(address / name 等のキー)
\BaserCore\Utility\BcUtil::fullUrl($url); // フルURL生成ヘルパは new でインスタンス化せず(DIコンテナ未注入で getService() が失敗する)、View からロードする。loadHelper() はインスタンスを返す。
$blog = $this->getView()->loadHelper('BcBlog.Blog'); // Helper 内から
$blog = $this->loadHelper('BcBlog.Blog'); // テンプレート内($this が View)からBc 接頭辞で書く: ヘルパ BcBlog.Blog、テーブル TableRegistry::getTableLocator()->get('BcBlog.BlogPosts')、element $this->BcBaser->element('BcBlog.xxx')。コアテーブルは複数形+プラグイン接頭辞(BaserCore.Contents / BaserCore.Sites)。Plugin::isLoaded() でガードし、必要なら loadHelper する。if (\Cake\Core\Plugin::isLoaded('<Plugin>')) {
$helper = $this->helpers()->has('Sample')
? $this->Sample
: $this->loadHelper('<Plugin>.Sample');
$helper->show(['num' => 3]);
}BcBaser->css($path, $inline = true, $options = [])(js() も同様)。第2引数は $inline(false でバッファに溜めて scripts() で出力)で、media 等の属性は第3引数に書く。
$this->BcBaser->css('style'); // <link ...>
$this->BcBaser->css(['print'], true, ['media' => 'print']); // 属性は第3引数
$this->BcBaser->js('theme', true, ['defer' => true]);リンク・画像などの URL はルート相対(/about/ 等)をハードコードせず BcBaser->getUrl('/path') を通して書く。サブディレクトリ設置時に base が自動付与される。
<a href="<?php echo $this->BcBaser->getUrl('/about/') ?>">会社概要</a>
<?php $this->BcBaser->link('会社概要', '/about/') ?>Helper 内で URL 文字列を組み立てる場合は \Cake\Routing\Router::url($url) を通すか、リクエストの webroot を前置する: $this->getView()->getRequest()->getAttribute('webroot') . ltrim($url, '/')。
uploadImage('<field>', $entity, $options) と書く——第1引数は素のフィールド名、第2引数は EntityInterface 必須(文字列不可)。BcUploadHelper はデフォルトで View の plugin/name からテーブルを解決するため、テーマや他プラグインのテンプレから使うときは 'table' => '<Plugin>.<Tables>'(BcUpload behavior 持ち)を options で明示する。画像サイズは 'imgsize'、無い時の代替は 'noimage'。file 型を含むメールフォーム系テンプレは §6 の setTableToUpload() を参照。
テーマの webroot/ 配下はテーマ名の snake_case をプレフィックスとした URL で配信される。
$this->BcBaser->css('style'); // <ThemeName> の webroot/css/style.css を解決
// URL を直接組む場合
$this->BcBaser->getUrl('/sample_theme/css/style.css'); // plugins/SampleTheme/webroot/css/style.cssウィジェットエリアに表示する element は templates/element/widget/(単数形 widget。widgets ではない)に置く。BcWidgetArea はこのパスを探索する(コアの配置例: bc-front/templates/plugin/BcBlog/element/widget/blog_recent_entries.php)。
BcBlog.widget/blog_recent_entries)をテーマでオーバーライドする場合も、テーマ側の同パス templates/element/widget/<名前>.php に置く。templates/Admin/element/widget/ に置く。メールフォームテンプレートは templates/Mail/<テンプレート名>/index.php(入力)・confirm.php(確認)・submit.php(完了)で構成し、フォーム描画は BcBaser の mailForm 系 API で書く(BcMailBaserHelper::methods() が Mailform ヘルパへ橋渡しする)。コアの正本は vendor/baserproject/bc-front/templates/plugin/BcMail/ にあり、迷ったらこれに合わせる。
フォーム生成は、コントローラがセットするエンティティ $mailMessage を第1引数に取り、valueSources を指定する。
$this->BcBaser->createMailForm($mailMessage, array_merge($options, ['valueSources' => ['context']]));主要 API(フィールド名は素の名前で書く。MailMessage. 接頭辞の文脈は内部処理される):
| 用途 | 書き方 |
|---|---|
| hidden フィールド | $this->BcBaser->mailFormHidden('mode', ['id' => 'MailMessageMode']) |
| フィールドのアンロック | $this->BcBaser->unlockMailFormField('mode') |
| 送信ボタン | $this->BcBaser->mailFormSubmit($caption, $options) |
| エラー表示 | $this->BcBaser->mailFormError('field_name', $message) |
| 画像認証 | $this->BcBaser->mailFormAuthCaptcha('auth_captcha', ['helper' => $this->BcBaser]) |
| フォーム終了 | $this->BcBaser->endMailForm() |
| フリーズ(confirm.php) | $this->BcBaser->freezeMailForm() |
| フィールド描画 | $this->BcBaser->mailFormControl($fieldName, $options) |
| ラベル | $this->BcBaser->mailFormLabel($fieldName, $text) |
| 入力値の取得 | $this->BcBaser->getMailFormSourceValue($fieldName) |
| グループ最終フィールド判定 | $this->BcBaser->isMailFormGroupLastField($mailFields, $field) |
mailFormHidden('mode') は素のフィールド名だと id が mode になる。JS が #MailMessageMode を参照する場合は ['id' => 'MailMessageMode'] を明示する。BcUploadHelper を利用するには … table … を指定してください(BcException)で落ちる。$this->BcBaser->setTableToUpload('BcMail.MailMessages');element('mail_input') はコア版(bc-front/.../BcMail/element/mail_input.php)にフォールバックするため、独自デザインが不要ならテーマに置かなくてよい。ブログテンプレートは templates/Blog/<テンプレート名>/ に index.php(一覧)・archives.php(カテゴリ/タグ/年月アーカイブ)・single.php(詳細)・posts.php(BcBaser->blogPosts() から呼ばれるパーツ用一覧)を置く。
$posts / $post はエンティティ(またはその ResultSet)。関連もプロパティアクセスで書く: $post->title、$post->content、$post->detail、$post->blog_category->title、$post->blog_content_id。posted。ソート指定は 'sort' => 'posted' / orderBy(['BlogPosts.posted' => 'DESC']) と書く。$this->Blog->getEyeCatch($post, ['width' => 300, 'link' => true]) または BcBaser 委譲の $this->BcBaser->blogPostEyeCatch($post, [...]) で描画する。存在判定は $post->eye_catch で行う。getBlogPostLinkUrl($post) / blogPostDate($post, 'Y.m.d') / blogPostCategory($post) / blogPostTitle($post, false) / blogPostContent($post, true, false, 46)。element/blog_category_list.php / blog_tag_list.php を参考にする)。TableRegistry::getTableLocator()->get('BcBlog.BlogPosts') からクエリビルダで書き、公開条件は getConditionAllowPublish() を使う。$blogPostsTable = \Cake\ORM\TableRegistry::getTableLocator()->get('BcBlog.BlogPosts');
$posts = $blogPostsTable->find()
->where($blogPostsTable->getConditionAllowPublish())
->where(['BlogPosts.blog_content_id' => $blogContentId])
->orderBy(['BlogPosts.posted' => 'DESC'])
->limit($num)
->all();同種の取得ロジックが複数テンプレートに散在する場合は、テーマの src/View/Helper/<ThemeName>Helper.php に集約する。
© baserproject, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .agents/skills/basercms5-theme-development of baserproject/basercms.
Open the folder on GitHubat commit 748b4f6
Basercms5 Theme Development 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.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Basercms5 Theme Development this skillbaserproject/basercms | 190 | — | ~2.7k | Automated safety check: Pass | MIT | |
| Discord Php Interactionsdiscord-php/DiscordPHP | 1.1k | — | ~1.5k | Automated safety check: Pass | MIT | |
| Interaction Flow Keeperdiscord-php/DiscordPHP | 1.1k | — | ~1.7k | Automated safety check: Pass | MIT | |
| Wp Plugin Developmentjorgerosal/wordpress-skills | 100 | — | ~12k | Automated safety check: Pass | MIT | |
| Hook Development for Claude Code Pluginsanthropics/claude-plugins-official | 37k | 11 repos | ~4.1k | Automated safety check: Notes | Apache-2.0 | |
| Claude Code Agent Developmentanthropics/claude-plugins-official | 37k | 8 repos | ~2.8k | Automated safety check: Pass | Apache-2.0 |
discord-php/DiscordPHP
Build DiscordPHP slash commands and message components — global command trees with subcommands, user- AND guild-installable commands usable in DMs / group DMs / guild channels, Components V2…
discord-php/DiscordPHP
Maintain interaction flow — Interaction typing, resolved data caching, command routing, autocomplete, modal responses, and interaction builders.
jorgerosal/wordpress-skills
WordPress plugin architecture review and WordPress.org submission standards.
anthropics/claude-plugins-official
Explains how to write Claude Code plugin hooks, both prompt-based checks and bash commands, for events such as PreToolUse, Stop and SessionStart.
anthropics/claude-plugins-official
Explains how to write agents for Claude Code plugins: the markdown file with YAML frontmatter, trigger descriptions, model and color settings, and system prompt design.
diet103/claude-code-infrastructure-showcase
A guide to creating and managing Claude Code skills with auto-activation: skill-rules.json triggers, hooks, enforcement levels, YAML frontmatter and progressive disclosure.
baserproject/basercms
baserCMS のリポジトリセキュリティアドバイザリ(GHSA・triage含む)対応を、一覧取得→指摘検証→課題別の修正→プライベートフォーク/ブランチ/PR作成→ローカル検証まで一気通貫で扱う手順とスクリプト。「セキュリティアドバイザリを確認」「triageの脆弱性を検証」「アドバイザリごとにフォークとPRを作って」「脆弱性修正をプルリクにまとめて」等のときに使う。Copilot/GHAは…
baserproject/basercms
baserCMS の「通常プラグイン(サードパーティ/単体配布)」を monorepo の「コアプラグイン」に昇格させる手順。「コアプラグインに変更」「コアプラグイン化」「通常プラグインをコアに昇格」「monorepo に取り込む」等のときに参照する。プラグイン名の規約変更(bc- プレフィックス付与・CamelCase→ハイフン区切り)、.git/シンボリックリンク/standalone…
baserproject/basercms
baserCMS プラグインを 5.2系 から 5.3系(PHP 8.5 / CakePHP 5.2.x ベース、開発中)へ移行する際の baserCMS 固有の破壊的変更・非推奨・テスト基盤対応のレシピ集。「プラグインを5.3に対応」「baserCMS 5.3 マイグレーション」「PluginCollection::create(): $config null given」「Plugin…
baserproject/basercms
baserCMS の plugins/baser-core/VERSION.txt に、リリース分の変更履歴(NEW/CHG/BUG)をコミットログから生成して追記する手順。「VERSION.txt を更新して」「リリースノートを作って」「変更履歴をまとめて」「今回のリリース分の変更点を書き出して」「前回リリースからの差分を VERSION.txt…
baserproject/basercms
baserCMS(CakePHP5 / PHPUnit)のユニットテストをローカル Docker 環境で実行・調査する手順。「ユニットテストを実行して」「全テストを走らせて」「このテストだけ流して」「テスト失敗を調べて」「プラグイン単体でテストを動かしたい」「プラグインにテスト環境を導入したい」等のときに参照する。コンテナ名・実行コマンド・権限自動承認のためのコマンド整形・失敗の集計と切り分け方…
baserproject/basercms
baserCMS 4系(CakePHP 2.10ベース)+ jQuery プロジェクトの開発ルール集。「baserCMS 4 で開発」「4系のプラグインを修正」「CakePHP 2系のコードを書く」「app/Plugin 配下の Controller/Model/View」「テーマの…
Works with
Categories
baserCMS 5系(CakePHP 5ベース)のテーマを新規開発・改修する際の正本パターン集。「テーマを作成」「テーマプラグインの構造」「layout/element の書き方」「固定ページテンプレート($page-contents)」「ウィジェット element の配置(element/widget)」「メールフォームテンプレート(createMailForm /…. Basercms5 Theme Development is an agent skill from baserproject/basercms.
Basercms5 Theme Development fits situations like: tasks that involve Hooks and plugins.
Run `npx skills add baserproject/basercms --skill basercms5-theme-development -a claude-code`. Or copy the skill folder (.agents/skills/basercms5-theme-development in baserproject/basercms) into .claude/skills/basercms5-theme-development in your project. Claude Code loads it when a task matches its description.
Run `npx skills add baserproject/basercms --skill basercms5-theme-development -a codex`. Or copy the skill folder (.agents/skills/basercms5-theme-development in baserproject/basercms) into .agents/skills/basercms5-theme-development in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add baserproject/basercms --skill basercms5-theme-development -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/basercms5-theme-development, .gemini/skills/basercms5-theme-development, .github/skills/basercms5-theme-development and .opencode/skills/basercms5-theme-development in your project.
SKILL.md names no scripts, command-line tools or credentials: Basercms5 Theme Development is instructions for the agent only.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Basercms5 Theme Development is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.7k tokens (SKILL.md is roughly 11k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Basercms5 Theme Development: Discord Php Interactions (discord-php/DiscordPHP, 1.1k stars), Interaction Flow Keeper (discord-php/DiscordPHP, 1.1k stars), Wp Plugin Development (jorgerosal/wordpress-skills, 100 stars) and Hook Development for Claude Code Plugins (anthropics/claude-plugins-official, 37k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
baserproject (a GitHub organization) maintains it in baserproject/basercms, which has 190 GitHub stars. The repository holds 15 skills in this directory. The repository was last updated on October 5, 2026.
Source: baserproject/basercms on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.