mirror of
https://github.com/Nikolay-Shirokov/cc-1c-skills.git
synced 2026-09-05 01:30:54 +03:00
Replace literal `.claude/skills/<owner>/...` paths in SKILL.md with the
`${CLAUDE_SKILL_DIR}` variable that Claude Code substitutes at invocation
time. Same-skill references become `${CLAUDE_SKILL_DIR}/<rest>`,
cross-skill references (erf-* → epf-*) become
`${CLAUDE_SKILL_DIR}/../<other>/<rest>`. All paths now wrapped in double
quotes to handle install locations with spaces.
This unblocks plugin-mode installation: literal `.claude/skills/...`
paths fail when the skill is loaded from `~/.claude/plugins/cache/...`
or from a personal `~/.claude/skills/` install. Drop-in mode continues
to work because Claude Code resolves the variable in all install scopes.
Verified via pilot:
- Project drop-in (cc-1c-skills repo)
- Personal `~/.claude/skills/cf-info/`
- Plugin via `/plugin marketplace add <local-path>`
Scope: 61 SKILL.md, 125 path replacements (8 cross-skill).
Scripts unchanged — they already use \$PSScriptRoot and ../<sibling>
patterns that resolve correctly under the bundled cache layout.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
61 lines
3.2 KiB
Markdown
61 lines
3.2 KiB
Markdown
---
|
|
name: meta-remove
|
|
description: Удалить объект метаданных из конфигурации 1С. Используй когда нужно удалить, убрать объект из конфигурации
|
|
argument-hint: <ConfigDir> -Object <Type.Name>
|
|
allowed-tools:
|
|
- Bash
|
|
- Read
|
|
- Glob
|
|
- AskUserQuestion
|
|
---
|
|
|
|
# /meta-remove — удаление объекта метаданных
|
|
|
|
Безопасно удаляет объект из XML-выгрузки конфигурации. Перед удалением проверяет ссылки на объект в реквизитах, коде и других метаданных. Если ссылки найдены — удаление блокируется.
|
|
|
|
## Использование
|
|
|
|
```
|
|
/meta-remove <ConfigDir> -Object <Type.Name>
|
|
```
|
|
|
|
## Параметры
|
|
|
|
| Параметр | Обязательный | Описание |
|
|
|------------|:------------:|-------------------------------------------------|
|
|
| ConfigDir | да | Корневая директория выгрузки (где Configuration.xml) |
|
|
| Object | да | Тип и имя объекта: `Catalog.Товары`, `Document.Заказ` и т.д. |
|
|
| DryRun | нет | Только показать что будет удалено, без изменений |
|
|
| KeepFiles | нет | Не удалять файлы, только дерегистрировать |
|
|
| Force | нет | Удалить несмотря на найденные ссылки |
|
|
|
|
## Команда
|
|
|
|
```powershell
|
|
powershell.exe -NoProfile -File "${CLAUDE_SKILL_DIR}/scripts/meta-remove.ps1" -ConfigDir "<путь>" -Object "Catalog.Товары"
|
|
```
|
|
|
|
## Поддерживаемые типы
|
|
|
|
Catalog, Document, Enum, Constant, InformationRegister, AccumulationRegister, AccountingRegister, CalculationRegister, ChartOfAccounts, ChartOfCharacteristicTypes, ChartOfCalculationTypes, BusinessProcess, Task, ExchangePlan, DocumentJournal, Report, DataProcessor, CommonModule, ScheduledJob, EventSubscription, HTTPService, WebService, DefinedType, Role, Subsystem, CommonForm, CommonTemplate, CommonPicture, CommonAttribute, SessionParameter, FunctionalOption, FunctionalOptionsParameter, Sequence, FilterCriterion, SettingsStorage, XDTOPackage, WSReference, StyleItem, Language
|
|
|
|
## Примеры
|
|
|
|
```powershell
|
|
# Проверка ссылок + dry run
|
|
... -ConfigDir C:\WS\tasks\cfsrc\acc_8.3.24 -Object "Catalog.Устаревший" -DryRun
|
|
|
|
# Удалить объект без ссылок
|
|
... -ConfigDir C:\WS\tasks\cfsrc\acc_8.3.24 -Object "Catalog.Устаревший"
|
|
|
|
# Принудительно удалить несмотря на ссылки
|
|
... -ConfigDir C:\WS\tasks\cfsrc\acc_8.3.24 -Object "Catalog.Устаревший" -Force
|
|
|
|
# Только дерегистрировать (файлы оставить)
|
|
... -ConfigDir C:\WS\tasks\cfsrc\acc_8.3.24 -Object "Report.Старый" -KeepFiles
|
|
|
|
# Удалить общий модуль
|
|
... -ConfigDir src -Object "CommonModule.МойМодуль"
|
|
```
|
|
|