{"id":19852507,"url":"https://github.com/someengineering/fixctl","last_synced_at":"2025-05-02T00:31:19.720Z","repository":{"id":228802665,"uuid":"774949574","full_name":"someengineering/fixctl","owner":"someengineering","description":"Fix CLI tool","archived":false,"fork":false,"pushed_at":"2024-10-07T11:23:26.000Z","size":116,"stargazers_count":5,"open_issues_count":0,"forks_count":2,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-06T20:12:35.959Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://fix.security","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/someengineering.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":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-03-20T13:50:06.000Z","updated_at":"2024-10-07T11:23:27.000Z","dependencies_parsed_at":"2024-04-09T16:40:26.548Z","dependency_job_id":"d1b78921-ecee-498a-937a-34a8703c3fbe","html_url":"https://github.com/someengineering/fixctl","commit_stats":null,"previous_names":["someengineering/fixctl"],"tags_count":9,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/someengineering%2Ffixctl","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/someengineering%2Ffixctl/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/someengineering%2Ffixctl/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/someengineering%2Ffixctl/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/someengineering","download_url":"https://codeload.github.com/someengineering/fixctl/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251966431,"owners_count":21672666,"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":[],"created_at":"2024-11-12T14:03:11.326Z","updated_at":"2025-05-02T00:31:14.702Z","avatar_url":"https://github.com/someengineering.png","language":"Go","readme":"# fixctl\nFix CLI tool\n\n## Installation\n\n### Binaries\nDownload the latest release from the [releases page](https://github.com/someengineering/fixctl/releases).\nOn macOS and Linux make sure to make the binary executable.\n\nLinux Example:\n```bash\ncurl -Lo fixctl https://github.com/someengineering/fixctl/releases/download/0.0.9/fixctl-linux-amd64-0.0.9\nchmod +x fixctl\n```\n\n### Homebrew\n```bash\nbrew install someengineering/tap/fixctl\n```\n\n## Usage\n```\nfixctl allows you to search the Fix Security Graph and export cloud inventory data for further processing.\n\nUsage:\n  fixctl [flags]\n\nFlags:\n      --csv-headers string   CSV headers (default \"id,name,kind,/ancestors.cloud.reported.id,/ancestors.account.reported.id,/ancestors.region.reported.id\")\n      --endpoint string      API endpoint URL (env FIX_ENDPOINT) (default \"https://app.fix.security\")\n      --format string        Output format: json, yaml or csv (default \"json\")\n  -h, --help                 help for fixctl\n      --search string        Search string\n      --token string         Auth token (env FIX_TOKEN)\n      --verbose              enable verbose output\n  -v, --version              version for fixctl\n      --with-edges           Include edges in search results\n      --workspace string     Workspace ID (env FIX_WORKSPACE)\n```\n\nIf an environment variable is set, it will be used and the command line flag ignored.\n\nGo to your [user settings](https://app.fix.security/user-settings) and create an API token. Set the `FIX_TOKEN` environment variable to the token value.\nThen go to your [workspace settings](https://app.fix.security/workspace-settings) and export `FIX_WORKSPACE` to the workspace ID you want to query.\n\n### Example\nSearch for available AWS EBS volumes that have not been accessed in the last 7 days and output in CSV format.\n```bash\n$ fixctl --format csv --search \"is(aws_ec2_volume) and volume_status = available and last_access \u003e 7d\"\nvol-0adeedfc71dcbe9d5,ResotoEKS-dynamic-pvc-e575191f-d4f3-4253-96e4-399ded05bf14,aws_ec2_volume,aws,752466027617,eu-central-1\nvol-0ae5f3fad85b7b3c6,vol-0ae5f3fad85b7b3c6,aws_ec2_volume,aws,625596817853,eu-central-1\nvol-0fe068d91a8aaaced,ResotoEKS-dynamic-pvc-08ded29a-70c9-4d36-9d28-727140850d96,aws_ec2_volume,aws,752466027617,eu-central-1\n```\n\nThe default output format for `fixctl` is JSON. Here we search for the same orphaned volumes and use `jq` to format the output as `aws ec2 delete-volume` commands.\n```bash\n$ fixctl --search \"is(aws_ec2_volume) and volume_status = available and last_access \u003e 30d\" | jq -r '. | \"aws ec2 delete-volume --volume-id \\(.reported.id) --region \\(.ancestors.region.reported.id) --profile \\(.ancestors.account.reported.id)\"'\naws ec2 delete-volume --volume-id vol-0adeedfc71dcbe9d5 --region eu-central-1 --profile 752466027617\naws ec2 delete-volume --volume-id vol-0ae5f3fad85b7b3c6 --region eu-central-1 --profile 625596817853\naws ec2 delete-volume --volume-id vol-0fe068d91a8aaaced --region eu-central-1 --profile 752466027617\n```\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsomeengineering%2Ffixctl","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsomeengineering%2Ffixctl","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsomeengineering%2Ffixctl/lists"}