{"id":14530147,"url":"https://github.com/termkit/gama","last_synced_at":"2025-05-16T01:06:03.723Z","repository":{"id":215776652,"uuid":"725731033","full_name":"termkit/gama","owner":"termkit","description":"Manage your GitHub Actions from Terminal with great UI 🧪","archived":false,"fork":false,"pushed_at":"2025-02-26T21:48:54.000Z","size":2178,"stargazers_count":390,"open_issues_count":7,"forks_count":20,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-05-08T20:14:31.436Z","etag":null,"topics":["actions","bubbles","bubbletea","cd","ci","cicd","githubactions","go","golang","terminal","terminal-ui","tui"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/termkit.png","metadata":{"files":{"readme":"README.md","changelog":null,"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}},"created_at":"2023-11-30T18:55:16.000Z","updated_at":"2025-05-07T01:33:52.000Z","dependencies_parsed_at":"2024-01-24T21:25:34.856Z","dependency_job_id":"1c0a2086-e801-4709-ba3c-4aaa7999137d","html_url":"https://github.com/termkit/gama","commit_stats":null,"previous_names":["termkit/gama"],"tags_count":15,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/termkit%2Fgama","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/termkit%2Fgama/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/termkit%2Fgama/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/termkit%2Fgama/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/termkit","download_url":"https://codeload.github.com/termkit/gama/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254448579,"owners_count":22072764,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["actions","bubbles","bubbletea","cd","ci","cicd","githubactions","go","golang","terminal","terminal-ui","tui"],"created_at":"2024-09-05T00:01:05.202Z","updated_at":"2025-05-16T01:05:58.699Z","avatar_url":"https://github.com/termkit.png","language":"Go","readme":"# GitHub Actions Manager (GAMA)\n\n\u003ca href=\"https://github.com/termkit/gama\" target=\"_blank\"\u003e\u003cimg src=\"https://img.shields.io/github/go-mod/go-version/termkit/gama?style=for-the-badge\u0026logo=go\" alt=\"GAMA Go Version\" /\u003e\u003c/a\u003e\n\u003ca href=\"https://goreportcard.com/report/github.com/termkit/gama\" target=\"_blank\"\u003e\u003cimg src=\"https://goreportcard.com/badge/github.com/termkit/gama?style=for-the-badge\u0026logo=go\" alt=\"GAMA Go Report Card\" /\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/termkit/gama\" target=\"_blank\"\u003e\u003cimg src=\"https://img.shields.io/github/license/termkit/gama?style=for-the-badge\" alt=\"GAMA Licence\" /\u003e\u003c/a\u003e\n\nGAMA is a powerful terminal-based user interface tool designed to streamline the management of GitHub Actions workflows. It allows developers to list, trigger, and manage workflows with ease directly from the terminal.\n\n![gama demo](docs/gama.gif)\n\n## Table of Contents\n- [Key Features](#key-features)\n- [Live Mode](#live-mode)\n- [Getting Started](#getting-started)\n  - [Prerequisites](#prerequisites)\n  - [Configuration](#configuration)\n- [Build \u0026 Installation](#build--installation)\n- [Contributing](#contributing)\n- [License](#license)\n- [Contact \u0026 Author](#contact--author)\n\n## Key Features\n\n- **Extended Workflow Inputs**: Supports more than 10 workflow inputs using JSON format.\n- **Workflow History**: Conveniently list all historical runs of workflows in a repository.\n- **Discoverability**: Easily list all triggerable (dispatchable) workflows in a repository.\n- **Workflow Management**: Trigger specific workflows with custom inputs.\n- **Live Updates**: Automatically refresh workflow status at configurable intervals.\n- **Docker Support**: Run directly from a container for easy deployment.\n\n### Live Mode\n\nGAMA includes a live mode feature that automatically refreshes the workflow status at regular intervals:\n\n- **Toggle Live Updates**: Press `ctrl+l` to turn live mode on/off\n- **Auto-start**: Set `settings.live_mode.enabled: true` to start GAMA with live mode enabled\n- **Refresh Interval**: Configure how often the view updates with `settings.live_mode.interval` (e.g., \"15s\", \"1m\")\n\nLive mode is particularly useful when monitoring ongoing workflow runs, as it eliminates the need for manual refreshing.\n\n## Getting Started\n\n### Prerequisites\n\nBefore using GAMA, you need to generate a GitHub token. Follow these [instructions](docs/generate_github_token/README.md) to create your token.\n\n### Configuration\n\n#### YAML Configuration\n\nPlace a `~/.config/gama/config.yaml` file in your home directory with the following content:\n\n```yaml\ngithub:\n  token: \u003cyour github token\u003e\n\nkeys:\n  switch_tab_right: shift+right\n  switch_tab_left: shift+left\n  quit: ctrl+c\n  refresh: ctrl+r\n  live_mode: ctrl+l  # Toggle live mode on/off\n  enter: enter\n  tab: tab\n\nsettings:\n  live_mode:\n    enabled: true    # Enable live mode at startup\n    interval: 15s    # Refresh interval for live updates\n```\n\n#### Environment Variable Configuration\n\nAlternatively, you can use an environment variable:\n\n```bash\nGITHUB_TOKEN=\"\u003cyour github token\u003e\" gama\n```\n\nYou can also make it an alias for a better experience:\n\n```bash\nalias gama='GITHUB_TOKEN=\"\u003cyour github token\u003e\" command gama'\n```\n\nIf you have the [GitHub CLI](https://cli.github.com/) installed, you automatically insert the var via:\n\n```bash\nGITHUB_TOKEN=\"$(gh auth token)\" gama\n```\n\nThis will skip needing to generate a token via the GitHub website.\n\n\u003e [!WARNING]\n\u003e For security reasons, you should not `export` your token globally in your shell.\n\u003e That would make it available to any app that can read environment variables.\n\u003e You should avoid committing it to your dotfiles repository, too.\n\n## Build \u0026 Installation\n\n### Using Docker\n\nRun GAMA in a Docker container:\n\n```bash\ndocker run --rm -it --env GITHUB_TOKEN=\"\u003cyour github token\u003e\" termkit/gama:latest\n```\n\n### Download Binary\n\nDownload the latest binary from the [releases page](https://github.com/termkit/gama/releases).\n\n### Build from Source\n\n```bash\nmake build\n# output: ./release/gama\n```\n\n---\n\n## Contributing\n\nContributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are **greatly appreciated**.\n\n## License\n\nDistributed under the GNU GENERAL PUBLIC LICENSE Version 3 or later. See [LICENSE](LICENSE) for more information.\n\n## Contact \u0026 Author\n\n[Engin Açıkgöz](https://github.com/canack)\n\n## Stargazers over time\n\n[![Stargazers over time](https://starchart.cc/termkit/gama.svg?variant=adaptive)](https://starchart.cc/termkit/gama)\n","funding_links":[],"categories":["Go","Applications"],"sub_categories":["Development Tools"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftermkit%2Fgama","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftermkit%2Fgama","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftermkit%2Fgama/lists"}