31 lines
974 B
PowerShell
31 lines
974 B
PowerShell
# Legt einen neuen Skill aus templates\skill an.
|
|
# Aufruf: scripts\new-skill.ps1 -Name <skill-name>
|
|
param([Parameter(Mandatory = $true)][string]$Name)
|
|
. (Join-Path $PSScriptRoot 'lib.ps1')
|
|
|
|
$errs = @(Get-NameErrors $Name)
|
|
if ($errs.Count -gt 0) {
|
|
foreach ($e in $errs) { Write-Host $e }
|
|
exit 1
|
|
}
|
|
|
|
$dir = Join-Path $SkillsDir $Name
|
|
if (Test-Path $dir) {
|
|
Write-Host "skills/$Name existiert bereits."
|
|
exit 1
|
|
}
|
|
|
|
New-Item -ItemType Directory -Force -Path $SkillsDir | Out-Null
|
|
Copy-Item -Path (Join-Path $Root 'templates/skill') -Destination $dir -Recurse
|
|
$today = Get-Date -Format 'yyyy-MM-dd'
|
|
foreach ($f in @('SKILL.md', 'README.md', 'CHANGELOG.md')) {
|
|
$p = Join-Path $dir $f
|
|
$t = (Read-Text $p).Replace('SKILL_NAME', $Name).Replace('DATUM', $today)
|
|
Write-Text $p $t
|
|
}
|
|
|
|
& (Join-Path $PSScriptRoot 'update-index.ps1')
|
|
|
|
Write-Host "Angelegt: skills/$Name"
|
|
Write-Host "Weiter: SKILL.md und README.md ausfuellen, dann scripts\validate.ps1 -Name $Name"
|