framework_eng/skills/tool-usage/platform-admin/rac-use/SKILL.md
1С server cluster administration through the RAC utility — viewing/terminating sessions, managing locks, connections, infobases, and other cluster objects.
npx skillsauth add steelmorgan/1c-agent-based-dev-framework rac-useInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
| Trigger | Action |
|---------|----------|
| Need to check/kill sessions in a database | session list / session terminate |
| Need to disconnect connections | connection list / connection disconnect |
| Need to block login to the database | infobase update --sessions-deny=on |
| Need to prohibit scheduled jobs | infobase update --scheduled-jobs-deny=on |
| Need to view locks | lock list |
| Need information about the cluster/databases | cluster list / infobase summary list |
Binary: /opt/1cv8/current/rac (always the current version).
Connection data: <project_root>/configs/yaxunit-runner.yml, section app.connection — server, database, login, password.
Cluster agent address: by default localhost:1545. If the server differs — specify explicitly as the last argument: rac <command> <host>:<port>.
All commands require --cluster=<uuid>. Get it first:
/opt/1cv8/current/rac cluster list
The output contains cluster : <uuid> — save it and use it later.
# Find the database UUID
/opt/1cv8/current/rac infobase --cluster=<cluster_uuid> summary list
# List the database sessions
/opt/1cv8/current/rac session --cluster=<cluster_uuid> list --infobase=<infobase_uuid>
/opt/1cv8/current/rac session --cluster=<cluster_uuid> terminate \
--session=<session_uuid> \
--error-message="The session was terminated by the agent to complete the task"
# Enable blocking
/opt/1cv8/current/rac infobase --cluster=<cluster_uuid> update \
--infobase=<infobase_uuid> \
--infobase-user=<user> --infobase-pwd=<pwd> \
--sessions-deny=on \
--denied-message="The database is blocked for maintenance" \
--permission-code="secret123"
# Remove blocking
/opt/1cv8/current/rac infobase --cluster=<cluster_uuid> update \
--infobase=<infobase_uuid> \
--infobase-user=<user> --infobase-pwd=<pwd> \
--sessions-deny=off
# Prohibit
/opt/1cv8/current/rac infobase --cluster=<cluster_uuid> update \
--infobase=<infobase_uuid> \
--infobase-user=<user> --infobase-pwd=<pwd> \
--scheduled-jobs-deny=on
# Allow
/opt/1cv8/current/rac infobase --cluster=<cluster_uuid> update \
--infobase=<infobase_uuid> \
--infobase-user=<user> --infobase-pwd=<pwd> \
--scheduled-jobs-deny=off
/opt/1cv8/current/rac lock --cluster=<cluster_uuid> list --infobase=<infobase_uuid>
# List database connections
/opt/1cv8/current/rac connection --cluster=<cluster_uuid> list --infobase=<infobase_uuid>
# Disconnect a specific connection
/opt/1cv8/current/rac connection --cluster=<cluster_uuid> disconnect \
--process=<process_uuid> --connection=<connection_uuid>
| Mode | Purpose |
|-------|-----------|
| cluster | Clusters: list, create, delete, administrators |
| infobase | Infobases: create, update, delete, session/scheduled job blocking |
| session | Sessions: list, information, forceful termination |
| connection | Connections: list, disconnect |
| lock | Locks: view |
| process | Worker processes |
| server | Worker servers |
| manager | Cluster managers |
| agent | Cluster agent |
| service | Manager services |
| rule | Assignment requirements |
| profile | Security profiles |
| counter | Resource consumption counters |
| limit | Resource consumption limits |
Help for any mode: rac help <mode>.
| Error | Cause | Solution |
|--------|---------|---------|
| Cluster agent unavailable | ragent is not running or the address is incorrect | Check localhost:1545 or specify the correct address |
| Invalid cluster identifier | The UUID was copied incorrectly | Repeat cluster list |
| Insufficient permissions | Cluster administrator credentials are required | Add --cluster-user / --cluster-pwd |
| Infobase not found | Incorrect database UUID | Check via infobase summary list |
depends_on: [] requires:
testing
MUST use BEFORE making a judgment about the cause of a conflict, a test failure, or an artifact dispute. Defines the end-to-end verification method L1→L6 and the classification of the first broken link.
development
MUST use AFTER a work cycle with ≥2 iterations (wrote → error → fixed → success). Provides the retrospective procedure and the format for recording practice/anti-patterns in references/learned-patterns.md or {project}/.context/learned-patterns.md.
tools
MUST use WHEN you are writing reusable knowledge into RLM (pattern / architectural decision / stable domain fact) OR reading it before a non-trivial task/solution in the domain. Provides the breakdown of native-push vs RLM-pull, tools for writing and reading RLM, H-MEM levels, and hygiene.
testing
MUST use WHEN the task is classified as simple (< 20 lines, 1 file, no new metadata objects, no architectural decisions). Provides a short cycle of 3 steps with a guard on the self path and mandatory verify.