> **Beta Translation:** This document was translated via Machine Learning and as such may not be 100% accurate. All non-English languages are currently classified as Beta.
Esta especificação descreve as capacidades aprimoradas de configuração por meio da interface de linha de comando para o TrustGraph, permitindo que os usuários gerenciem itens de configuração individuais por meio de comandos de linha de comando granulares. A integração suporta quatro casos de uso primários:
1.**Listar Itens de Configuração**: Exibir chaves de configuração de um tipo específico
2.**Obter Item de Configuração**: Recuperar valores de configuração específicos
3.**Definir Item de Configuração**: Definir ou atualizar itens de configuração individuais
4.**Excluir Item de Configuração**: Remover itens de configuração específicos
## Objetivos
**Controle Granular**: Permitir o gerenciamento de itens de configuração individuais, em vez de operações em lote
**Listagem Baseada em Tipo**: Permitir que os usuários explorem itens de configuração por tipo
**Operações de Item Único**: Fornecer comandos para obter/definir/excluir itens de configuração individuais
**Integração com a API**: Utilizar a API de Configuração existente para todas as operações
**Padrão de CLI Consistente**: Seguir as convenções e padrões de CLI do TrustGraph estabelecidos
**Tratamento de Erros**: Fornecer mensagens de erro claras para operações inválidas
**Saída JSON**: Suportar saída estruturada para uso programático
**Documentação**: Incluir ajuda abrangente e exemplos de uso
## Contexto
Atualmente, o TrustGraph fornece gerenciamento de configuração por meio da API de Configuração e um único comando de linha de comando `tg-show-config` que exibe toda a configuração. Embora isso funcione para visualizar a configuração, ele carece de capacidades de gerenciamento granular.
As limitações atuais incluem:
Não há como listar itens de configuração por tipo a partir da linha de comando
Não há comando de linha de comando para recuperar valores de configuração específicos
Não há comando de linha de comando para definir itens de configuração individuais
Não há comando de linha de comando para excluir itens de configuração específicos
Esta especificação aborda essas lacunas, adicionando quatro novos comandos de linha de comando que fornecem gerenciamento de configuração granular. Ao expor operações individuais da API de Configuração por meio de comandos de linha de comando, o TrustGraph pode:
Permitir o gerenciamento de configuração por script
Permitir a exploração da estrutura de configuração por tipo
Suportar atualizações de configuração direcionadas
Fornecer controle de configuração granular
## Design Técnico
### Arquitetura
A configuração aprimorada da linha de comando requer os seguintes componentes técnicos:
1.**tg-list-config-items**
Lista chaves de configuração para um tipo especificado
Chama o método da API Config.list(type)
Exibe a lista de chaves de configuração
Módulo: `trustgraph.cli.list_config_items`
2.**tg-get-config-item**
Recupera um(s) item(ns) de configuração específico(s)
Chama o método da API Config.get(keys)
Exibe os valores de configuração em formato JSON
Módulo: `trustgraph.cli.get_config_item`
3.**tg-put-config-item**
Define ou atualiza um item de configuração
Chama o método da API Config.put(values)
Aceita parâmetros de tipo, chave e valor
Módulo: `trustgraph.cli.put_config_item`
4.**tg-delete-config-item**
Remove um item de configuração
Chama o método da API Config.delete(keys)
Aceita parâmetros de tipo e chave
Módulo: `trustgraph.cli.delete_config_item`
### Modelos de Dados
#### ConfigKey e ConfigValue
Os comandos utilizam as estruturas de dados existentes de `trustgraph.api.types`:
```python
@dataclasses.dataclass
class ConfigKey:
type : str
key : str
@dataclasses.dataclass
class ConfigValue:
type : str
key : str
value : str
```
Esta abordagem permite:
Tratamento de dados consistente entre a interface de linha de comando (CLI) e a API.