{"id":37092916,"url":"https://github.com/fselich/smm","last_synced_at":"2026-01-14T11:18:08.601Z","repository":{"id":308724735,"uuid":"807031122","full_name":"fselich/smm","owner":"fselich","description":"SMM is a Terminal User Interface (TUI) tool that allows you to efficiently and securely view, edit, and manage Google Cloud Platform secrets.","archived":false,"fork":false,"pushed_at":"2025-09-12T12:40:34.000Z","size":140,"stargazers_count":3,"open_issues_count":2,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-09-12T14:56:18.497Z","etag":null,"topics":["gcloud","gcloud-sdk","golang","secret-management","secrets-management","tui"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/fselich.png","metadata":{"files":{"readme":"README.es.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2024-05-28T11:00:48.000Z","updated_at":"2025-09-12T12:40:38.000Z","dependencies_parsed_at":"2025-08-07T15:09:23.241Z","dependency_job_id":"289ecd14-2839-433b-8e3b-b6512a6bf3dd","html_url":"https://github.com/fselich/smm","commit_stats":null,"previous_names":["fselich/smm"],"tags_count":15,"template":false,"template_full_name":null,"purl":"pkg:github/fselich/smm","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fselich%2Fsmm","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fselich%2Fsmm/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fselich%2Fsmm/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fselich%2Fsmm/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/fselich","download_url":"https://codeload.github.com/fselich/smm/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fselich%2Fsmm/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28418128,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-14T10:47:48.104Z","status":"ssl_error","status_checked_at":"2026-01-14T10:46:19.031Z","response_time":107,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["gcloud","gcloud-sdk","golang","secret-management","secrets-management","tui"],"created_at":"2026-01-14T11:18:07.997Z","updated_at":"2026-01-14T11:18:08.586Z","avatar_url":"https://github.com/fselich.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"**[English](README.md)** | **Español**\n\n# SMM - Secret Manager Manager\n\n**SMM** es una herramienta de interfaz de terminal (TUI) que permite visualizar, editar y gestionar secretos de Google Cloud Platform de manera eficiente y segura.\n\n## Características\n\n- **Navegación intuitiva** con interfaz de terminal moderna\n- **Edición de secretos** con tu editor favorito\n- **Gestión de versiones** - visualiza, restaura y crea nuevas versiones\n- **Búsqueda avanzada** - busca por nombre o contenido\n- **Copia al portapapeles** con un solo comando\n- **Syntax highlighting** para múltiples formatos (JSON, Bash, INI, PHP)\n- **Multi-proyecto** - cambia fácilmente entre proyectos de GCP\n\n## Instalación\n\n### Homebrew (Recomendado)\n\n```bash\nbrew tap fselich/tap\nbrew install smm\n```\n\n### Descargar Binario\n\nDescarga la última versión para tu plataforma desde [GitHub Releases](https://github.com/fselich/smm/releases):\n\n#### Linux x64\n```bash\nwget https://github.com/fselich/smm/releases/latest/download/smm-linux-amd64.tar.gz\ntar -xzf smm-linux-amd64.tar.gz\nchmod +x smm\nsudo mv smm /usr/local/bin/  # Opcional: instalar en el sistema\n```\n\n#### Linux ARM64\n```bash\nwget https://github.com/fselich/smm/releases/latest/download/smm-linux-arm64.tar.gz\ntar -xzf smm-linux-arm64.tar.gz\nchmod +x smm\nsudo mv smm /usr/local/bin/  # Opcional: instalar en el sistema\n```\n\n### Desde el código fuente\n\n#### Requisitos previos\n- [Go](https://go.dev/doc/install) (versión 1.24.4 o superior)\n- [Git](https://git-scm.com/book/en/v2/Getting-Started)\n- [Google Cloud SDK](https://cloud.google.com/sdk/docs/install) (gcloud)\n\n#### Clonar el repositorio y compilar\n```bash\ngit clone git@github.com:fselich/smm.git\ncd smm\ngo build -o smm cmd/main.go\n```\n\n## Uso\n\n### Uso básico\n```bash\n./smm                    # Usar proyecto por defecto\n./smm -p PROJECT_ID      # Especificar proyecto de GCP\n./smm -v                 # Mostrar información de la versión\n```\n## Controles de Teclado\n\n### Navegación\n| Tecla       | Acción                                                     |\n| ----------- | ---------------------------------------------------------- |\n| `↑` `↓`     | Navegar por la lista / Scroll en el detalle del secreto   |\n| `Tab`       | Cambiar foco entre lista y detalle                        |\n| `Shift + ←→`| Redimensionar la vista de la lista                        |\n\n### Búsqueda y Filtrado\n| Tecla       | Acción                                                     |\n| ----------- | ---------------------------------------------------------- |\n| `/`         | Filtrar por nombre de secreto                              |\n| `Ctrl+F`    | Buscar en el contenido de todos los secretos              |\n\n### Gestión de Secretos\n| Tecla       | Acción                                                     |\n| ----------- | ---------------------------------------------------------- |\n| `i`         | Mostrar información del secreto (metadatos, fecha de creación, etiquetas) |\n| `c`         | Copiar secreto al portapapeles                             |\n| `n`         | Crear nueva versión del secreto                            |\n| `v`         | Mostrar/ocultar versiones del secreto                      |\n| `r`         | Restaurar versión seleccionada                             |\n\n### Sistema\n| Tecla       | Acción                                                     |\n| ----------- | ---------------------------------------------------------- |\n| `p`         | Cambiar proyecto de GCP                                    |\n| `Esc`       | Refrescar / Cancelar operación                             |\n| `Ctrl+C`    | Salir del programa                                         |\n\n### Opciones de línea de comandos\n\n| Opción            | Descripción                                    |\n| ----------------- | ---------------------------------------------- |\n| `-p PROJECT_ID`   | Cargar secretos del proyecto especificado     |\n| `-v`              | Mostrar información de la versión             |\n\n\n## Autenticación\n\nSMM utiliza la autenticación existente de `gcloud`. Asegúrate de estar autenticado antes de usar la herramienta.\n\n### Verificar autenticación\n\n```bash\ngcloud config list\n```\n\nEl resultado debe contener tu cuenta y proyecto:\n\n```bash\n[core]\naccount = tu@email.com\nproject = tu-proyecto-gcp\n```\n\n### Verificar permisos\n\n```bash\ngcloud secrets list --project=tu-proyecto-gcp\n```\n\nSi tienes los permisos necesarios, verás la lista de secretos del proyecto.\n\n### Permisos requeridos\n\nTu cuenta necesita los siguientes roles de IAM:\n- `roles/secretmanager.viewer` - Para listar y leer secretos\n- `roles/secretmanager.secretVersionManager` - Para crear nuevas versiones\n\n### Autenticación con gcloud\nSi no estás autenticado, puedes hacerlo con:\n```bash\ngcloud auth login\n```\n\n## Syntax Highlighting\n\nSMM detecta automáticamente el formato del contenido y aplica coloreado de sintaxis para:\n\n- **Bash/Env** - Variables de entorno\n- **JSON** - Datos estructurados  \n- **INI** - Archivos de configuración\n- **PHP** - Código PHP\n\n## Configuración\n\nLa aplicación almacena su configuración en `~/.config/smm/config.yaml`. **El archivo de configuración se crea automáticamente si no existe** cuando ejecutas SMM por primera vez.\n\nEstructura de configuración:\n\n```yaml\nprojects:                               # Lista de proyectos GCP\n  - id: \"mi-proyecto-gcp-1\"\n    type: \"gcp\"\n  - id: \"mi-proyecto-gcp-2\"\n    type: \"gcp\"  \nselected: \"mi-proyecto-gcp-1\"            # Proyecto actualmente seleccionado\nlogPath: \"/ruta/al/archivo/log\"          # Ruta del archivo de log (opcional)\n```\n\n**Notas:**\n- Los proyectos se añaden automáticamente cuando cambias a ellos usando la tecla `p`\n- El campo `selected` recuerda tu último proyecto usado\n- `logPath` es opcional - déjalo vacío para deshabilitar el logging\n\n## Contribuir\n\n1. Fork el proyecto\n2. Crea una rama para tu feature (`git checkout -b feature/nueva-caracteristica`)\n3. Commit tus cambios (`git commit -am 'Añadir nueva característica'`)\n4. Push a la rama (`git push origin feature/nueva-caracteristica`)  \n5. Abre un Pull Request\n\n## Licencia\n\nEste proyecto está bajo la licencia MIT. Ver el archivo [LICENSE](LICENSE) para más detalles.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffselich%2Fsmm","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffselich%2Fsmm","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffselich%2Fsmm/lists"}