clarioncom-github-init
Initialize a GitHub repository for a ClarionCOM project with proper .gitignore, README, and remote setup
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Initialize a GitHub repository for a ClarionCOM project with proper .gitignore, README, and remote setup
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Analyze Clarion code generation traces to find recurring failure patterns. Uses evidence-gating (2+ occurrences) to identify real issues. Suggests improvements for the /clarion skill. Triggers on '/clarion-analyze', 'analyze clarion traces', 'what mistakes am I making'.
Benchmark Clarion code generation quality by running test prompts and scoring the output. Measures improvement over time. Triggers on '/clarion-benchmark', 'benchmark clarion', 'test clarion code quality'.
Convert a Clarion dictionary from one file driver to another (e.g., TopSpeed to SQLite). Exports the dictionary to .dctx, transforms driver settings, regenerates GUIDs, creates a new .dct from blank template, and prepares for import. User must perform the final import manually in the IDE.
Create Clarion IDE addins with proper project structure, templates, and SharpDevelop integration. Use when creating new IDE tools, pads, embeditor toolbar buttons, or menu commands for the Clarion IDE.
Clarion language programming reference with syntax rules, data types, control structures, Windows API integration patterns, and template-authoring gotchas (#AT,
Compile C# COM projects for Clarion using MSBuild with correct paths, error handling, and build verification. Supports public releases with changelog management. Auto-applies for building .NET Framework COM components. Verification steps use parallel execution.
| name | clarioncom-github-init |
| description | Initialize a GitHub repository for a ClarionCOM project with proper .gitignore, README, and remote setup |
| version | 1.1.0 |
| changelog | [{"version":"1.1.0","date":"2026-01-13T00:00:00.000Z","changes":["Rewrote to use clarioncom-env.ps1 helper script","Fixed Bash variable escaping issues","Added gh-check and gh-user actions to helper script"]},{"version":"1.0.0","date":"2026-01-13T00:00:00.000Z","changes":["Initial release with GitHub repository initialization","Automatic .gitignore generation for ClarionCOM projects","README.md generation with project details","GitHub CLI integration for remote repository creation"]}] |
❌ powershell -Command "..."
❌ powershell -Command "Get-Command gh..."
❌ powershell -Command "$envFile = ..."
❌ powershell -Command "if (Test-Path..."
❌ where gh
ANY command using powershell -Command with variables WILL FAIL. The $ characters get stripped by Bash.
This skill initializes a GitHub repository for a ClarionCOM project.
# Check gh CLI installed
powershell -ExecutionPolicy Bypass -Command '& (Join-Path $env:APPDATA "ClarionCOM\scripts\clarioncom-env.ps1") gh-check'
# Get full path to gh.exe (use this for all gh commands!)
powershell -ExecutionPolicy Bypass -Command '& (Join-Path $env:APPDATA "ClarionCOM\scripts\clarioncom-env.ps1") gh-path'
# Check GitHub token configured
powershell -ExecutionPolicy Bypass -Command '& (Join-Path $env:APPDATA "ClarionCOM\scripts\clarioncom-env.ps1") github-token'
# Check GitHub authentication
powershell -ExecutionPolicy Bypass -Command '& (Join-Path $env:APPDATA "ClarionCOM\scripts\clarioncom-env.ps1") gh-user'
# Check if .git exists
test -d "PATH/.git" && echo "EXISTS" || echo "NOT_EXISTS"
# Check if file exists - .gitignore and README.md are in project root
test -f "PATH/.gitignore" && echo "EXISTS" || echo "NOT_EXISTS"
test -f "PATH/README.md" && echo "EXISTS" || echo "NOT_EXISTS"
# Check for .details file - ALWAYS in Clarion subfolder, never search for it
ls "PATH/Clarion/"*.details 2>/dev/null || echo "NO_DETAILS"
IMPORTANT: After getting the gh path from gh-path, use PowerShell to run gh commands:
# Get gh path first, then use it in PowerShell commands
powershell -ExecutionPolicy Bypass -Command "& 'C:\Program Files\GitHub CLI\gh.exe' auth status"
powershell -ExecutionPolicy Bypass -Command "& 'C:\Program Files\GitHub CLI\gh.exe' repo create NAME --private --source . --push"
# Git commands (use bash)
git config --global --add safe.directory "PATH" # ALWAYS run first on Windows!
git -C "PATH" remote -v
git init
git add .
git commit -m "message"
DO NOT USE Search or Glob tools - all file locations are known and fixed.
Use this skill when:
Before initialization, ensure:
gh) is installedGITHUB_TOKEN is configured in ~/.clarioncom.env⚠️ REMINDER: Do NOT use powershell -Command. Use ONLY the helper script commands shown below.
COPY THIS EXACT COMMAND:
powershell -ExecutionPolicy Bypass -Command '& (Join-Path $env:APPDATA "ClarionCOM\scripts\clarioncom-env.ps1") gh-check'
Output: INSTALLED or NOT_INSTALLED
If NOT_INSTALLED, ask the user: "GitHub CLI is required for repository initialization. Install it now?"
winget install GitHub.cli and wait for completionGitHub CLI can be installed manually from: https://cli.github.com/
After installation, run 'gh auth login' to authenticate.
COPY THIS EXACT COMMAND:
powershell -ExecutionPolicy Bypass -Command '& (Join-Path $env:APPDATA "ClarionCOM\scripts\clarioncom-env.ps1") github-token'
Output: The token value or NOT_CONFIGURED
If NOT_CONFIGURED, display the following and stop:
GitHub token required for repository creation.
To set up your token:
1. Visit https://github.com/settings/tokens
2. Click "Generate new token (classic)"
3. Select scopes: repo, read:org
4. Copy the generated token
5. Add to ~/.clarioncom.env: GITHUB_TOKEN=ghp_your_token_here
For detailed instructions: https://clarionlive.com/com_for_clarion/marketplace/setup
COPY THIS EXACT COMMAND:
powershell -ExecutionPolicy Bypass -Command '& (Join-Path $env:APPDATA "ClarionCOM\scripts\clarioncom-env.ps1") gh-user'
Output: GitHub username, NOT_AUTHENTICATED, or NOT_INSTALLED
If NOT_AUTHENTICATED, the user needs to run gh auth login first.
USE BASH COMMANDS ONLY - no PowerShell for file checks. DO NOT use Search/Glob tools.
test -d "PROJECT_PATH/.git" && echo "EXISTS" || echo "NOT_EXISTS"
git -C "PROJECT_PATH" remote -v 2>/dev/null || echo "NO_REMOTES"
test -f "PROJECT_PATH/.gitignore" && echo "GITIGNORE_EXISTS" || echo "GITIGNORE_MISSING"
test -f "PROJECT_PATH/README.md" && echo "README_EXISTS" || echo "README_MISSING"
The .details file is ALWAYS located at PROJECT_PATH/Clarion/*.details. Do NOT search for it - check directly:
ls "PROJECT_PATH/Clarion/"*.details 2>/dev/null || echo "NO_DETAILS"
If a .details file exists, read it to extract project description for the README.
If git is already initialized with a remote:
Call get_ca_project_info with the project folder path:
get_ca_project_info(folder: "PROJECT_PATH")
If the tool returns data:
repoName as the default repository namegithubUsername to know which account to create underIf repoName was returned by get_ca_project_info:
If not available, extract default from folder name:
basename "PROJECT_PATH"
Ask user: "Repository name?"
Ask user: "Repository visibility?"
If a .details file was found, extract the description from it (look for Description: line).
Ask user: "Repository description?"
Ask user: "Which license would you like to use?"
If .gitignore does NOT exist (already checked in Step 2c), create it using the Write tool with this content:
# Build outputs
bin/
obj/
# Clarion deployment folder (generated artifacts)
Clarion/
# Visual Studio files
*.user
*.suo
.vs/
# NuGet packages
packages/
# IDE and editor files
*.swp
*.swo
*~
# OS files
Thumbs.db
.DS_Store
If README.md does NOT exist (already checked in Step 2c), generate it using documentation from the Clarion folder.
YOU MUST READ THESE FILES using the Read tool to extract their content for the README:
ls "PROJECT_PATH/Clarion/"
PROJECT_PATH/Clarion/*.details - Contains: Description, ControlType, ProgId, VersionPROJECT_PATH/Clarion/*.methods - Contains: All properties and methods with signaturesPROJECT_PATH/Clarion/*.events - Contains: All events with signatures (if exists)IMPORTANT: Do not skip this step! The README quality depends on reading these files and extracting their content.
After reading the documentation files, use the Write tool to create a comprehensive README.md.
Extract and include:
.details: Project description, version, control type.methods: List ALL properties with their types, list ALL methods with parameters.events: List ALL events with their signaturesUse this structure:
# {PROJECT_NAME}
{DESCRIPTION from .details file}
## Overview
This is a ClarionCOM control for use with Clarion for Windows applications.
## Requirements
- .NET Framework 4.7.2 or later
- Clarion 11.0 or later
## Features
{List key features based on the methods/properties from .methods file}
## Installation
Copy the contents of the `Clarion/` folder to your Clarion accessory folder:
- `{ControlName}.dll` - The compiled control
- `{ControlName}.manifest` - Registration-free COM manifest
- Other supporting files
## API Reference
### Properties
{Extract properties from .methods file - format as a table or list}
### Methods
{Extract methods from .methods file - include parameters and return types}
### Events
{If .events file exists, list the events with their signatures}
## Building from Source
1. Clone this repository
2. Open in Visual Studio or use Claude Code
3. Build in Release mode
Or use Claude Code:
/ClarionCOM
Then select "Build existing project".
## License
{LICENSE TEXT based on user selection - see Step 5c}
## Links
- [COM for Clarion Documentation](https://clarionlive.com/com_for_clarion)
- [COM Marketplace](https://clarionlive.com/com_for_clarion/marketplace)
Based on the license selected in Step 3, create a LICENSE file in the project root.
MIT License:
MIT License
Copyright (c) {YEAR} {AUTHOR}
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
Apache 2.0: Use standard Apache 2.0 license text.
GPL 3.0: Use standard GPL 3.0 license text.
No License: Do not create LICENSE file, put "All Rights Reserved" in README.
Get the current year with:
date +%Y
Get author name from git config or ask user:
git config user.name 2>/dev/null || echo "UNKNOWN"
USE THESE EXACT BASH COMMANDS - substitute PROJECT_PATH, REPO_NAME, etc. with actual values:
ALWAYS run this first to prevent "dubious ownership" errors on Windows drives:
git config --global --add safe.directory "PROJECT_PATH"
If no .git folder exists:
cd "PROJECT_PATH" && git init
cd "PROJECT_PATH" && git add . && git status --porcelain
If there are changes to commit:
cd "PROJECT_PATH" && git commit -m "Initial commit"
First, get the full path to gh.exe:
powershell -ExecutionPolicy Bypass -Command '& (Join-Path $env:APPDATA "ClarionCOM\scripts\clarioncom-env.ps1") gh-path'
This will return something like C:\Program Files\GitHub CLI\gh.exe. Store this path for use in gh commands.
If gh-user returned NOT_AUTHENTICATED, authenticate using the token from .clarioncom.env:
powershell -ExecutionPolicy Bypass -Command "& 'GH_PATH' auth login --with-token <<< (Get-Content $env:USERPROFILE\.clarioncom.env | Select-String 'GITHUB_TOKEN=' | ForEach-Object { $_ -replace 'GITHUB_TOKEN=','' })"
Or have the user run gh auth login interactively.
Use PowerShell with the full gh path to create repo and push:
powershell -ExecutionPolicy Bypass -Command "Set-Location 'PROJECT_PATH'; & 'GH_PATH' repo create REPO_NAME --VISIBILITY --description 'DESCRIPTION' --source . --push"
Where:
GH_PATH - the full path from step 6d (e.g., C:\Program Files\GitHub CLI\gh.exe)PROJECT_PATH - the actual project folder pathREPO_NAME - the repository name from Step 3VISIBILITY - either --private or --publicDESCRIPTION - the description from Step 3After successful initialization, display:
============================================================
GitHub Repository Created!
============================================================
Repository: https://github.com/{username}/{repoName}
Visibility: {visibility}
Your project is now on GitHub!
Next steps:
- Make the repository public when ready to share
- Run '/ClarionCOM' and select "Submit to Marketplace"
============================================================
GitHub CLI is required for repository initialization.
Install with: winget install GitHub.cli
Or download from: https://cli.github.com/
After installation, run: gh auth login
Error: No GITHUB_TOKEN found in ~/.clarioncom.env
To set up your token:
1. Visit https://github.com/settings/tokens
2. Click "Generate new token (classic)"
3. Select scopes: repo, read:org
4. Copy the generated token
5. Add to ~/.clarioncom.env: GITHUB_TOKEN=ghp_your_token_here
Error: Repository '{repoName}' already exists on GitHub.
Options:
1. Run skill again with a different name
2. Delete the existing repository
3. Manually add existing repo as remote:
git remote add origin https://github.com/{username}/{repoName}.git
git push -u origin main
Error: Not authenticated with GitHub.
Run: gh auth login
Then retry this operation.
This skill can be invoked:
/ClarionCOM command under "More options..." > "Initialize GitHub Repo"The skill:
.gitignore and README.md only if they don't existgh repo create with --source . and --push for streamlined setupgh) and uses its authenticationclarioncom-build - Build the controlclarioncom-deploy - Generate deployment artifactsclarioncom-validate - Validate control complianceclarioncom-marketplace-submit - Submit control to marketplace (requires public repo)