{"id":38192901,"url":"https://github.com/holys/redis-cli","last_synced_at":"2026-01-17T00:16:25.797Z","repository":{"id":57484326,"uuid":"77099006","full_name":"holys/redis-cli","owner":"holys","description":"A pure go implementation of redis-cli. ","archived":false,"fork":false,"pushed_at":"2024-04-02T12:11:22.000Z","size":173,"stargazers_count":213,"open_issues_count":1,"forks_count":22,"subscribers_count":9,"default_branch":"master","last_synced_at":"2024-11-15T03:17:17.352Z","etag":null,"topics":["redis","redis-cli"],"latest_commit_sha":null,"homepage":"https://github.com/holys/redis-cli","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/holys.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":"2016-12-22T01:22:39.000Z","updated_at":"2024-10-11T13:49:06.000Z","dependencies_parsed_at":"2024-06-18T19:50:02.987Z","dependency_job_id":"73f0e11f-6981-4000-a1da-ca0538d39efa","html_url":"https://github.com/holys/redis-cli","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/holys/redis-cli","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/holys%2Fredis-cli","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/holys%2Fredis-cli/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/holys%2Fredis-cli/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/holys%2Fredis-cli/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/holys","download_url":"https://codeload.github.com/holys/redis-cli/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/holys%2Fredis-cli/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28490046,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-16T23:55:29.509Z","status":"ssl_error","status_checked_at":"2026-01-16T23:55:29.108Z","response_time":107,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5: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":["redis","redis-cli"],"created_at":"2026-01-17T00:16:23.853Z","updated_at":"2026-01-17T00:16:25.743Z","avatar_url":"https://github.com/holys.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"A pure Go Redis-cli \n==================\n[![Go Report Card](https://goreportcard.com/badge/github.com/holys/redis-cli)](https://goreportcard.com/report/github.com/holys/redis-cli)\n\nThis is a simple redis-cli forked from [https://github.com/siddontang/ledisdb(ledis-cli)](https://github.com/siddontang/ledisdb).\nFully compatible with [Redis Protocol specification](https://redis.io/topics/protocol).\n\n\n### Features \n\n- Pure Go implementation\n- Full compatible with [Redis Protocol specification](https://redis.io/topics/protocol)\n- Basic support for hostname, port, auth, db\n- REPL \n- Non-interactively execute command \n- Raw format output\n- Monitor command support (both in REPL and execution directly)\n- CONNECT command support(example is as follows)\n\n### Install \n\nTo install, use `go get`\n```\ngo get -u -v github.com/holys/redis-cli \n```\n\nor download binary file from [release](https://github.com/holys/redis-cli/releases).\n\n### Usage\n\n```\n$ ./redis-cli --help\nUsage of ./redis-cli:\n  -a string\n        Password to use when connecting to the server\n  -h string\n        Server hostname (default \"127.0.0.1\")\n  -n int\n        Database number(default 0)\n  -p int\n        Server server port (default 6379)\n  -raw\n        Use raw formatting for replies\n  -s string\n        Server socket. (overwrites hostname and port)\n\nAlmost the same as the official redis-cli.\n\n$ ./redis-cli\n127.0.0.1:6379\u003e get info\n\"{\\\"age\\\":1,\\\"name\\\":\\\"cdh\\\"}\"\n\n$ ./redis-cli --raw\n127.0.0.1:6379\u003e get info\n{\"age\":1,\"name\":\"cdh\"}\n\n$ ./redis-cli get info\n\"{\\\"age\\\":1,\\\"name\\\":\\\"cdh\\\"}\"\n\n$ ./redis-cli --raw get info\n{\"age\":1,\"name\":\"cdh\"}\n\n$ ./redis-cli monitor\nOK\n1483327130.764598 [0 127.0.0.1:61344] \"PING\"\n1483327133.769646 [0 127.0.0.1:61344] \"PING\"\n1483327136.768431 [0 127.0.0.1:61344] \"PING\"\n1483327139.767084 [0 127.0.0.1:61344] \"PING\"\n ...\n\n---\nNew command support: CONNECT host port [auth]\n\n$ ./redis-cli\n127.0.0.1:6379\u003e set hostport \"127.0.0.1:6379\"\nOK\n127.0.0.1:6379\u003e get hostport\n\"127.0.0.1:6379\"\n127.0.0.1:6379\u003e connect 127.0.0.1 6380\nconnected 127.0.0.1:6380 successfully\n127.0.0.1:6380\u003e get hostport\n(nil)\n127.0.0.1:6380\u003e\n```\n\n\n## Play with [GoTTY](https://github.com/yudai/gotty)\n\ngotty -w  ./redis-cli --welcome\n\n![screenshot](redis-cli-gotty.gif)\n\n\n### Why I build this?\n\nSometimes I would like to access to the redis-server(or redis-proxy), but there is no redis-cli in the\nthe production machine which is controlled by the ops guys, and I don't have the root privilege to \ninstall one via apt-get or yum. Some people may ask that why don't you ask the ops guys for help? I just \ndon't want to bother them because somtimes they are very busy, and I just want the redis-cli for single use.\nPeople may be curious that why don't I git clone one from github and build it from source. \n\nOk, let me show you:\n```\ngit clone https://github.com/antirez/redis.git\nInitialized empty Git repository in /home/work/app/redis/.git/\nremote: Counting objects: 45784, done.\nremote: Compressing objects: 100% (92/92), done.\nReceiving objects:   0% (62/45784), 20.01 KiB | 5 KiB/s\n\nReceiving objects:   0% (291/45784), 84.01 KiB | 1 KiB/s\n\nReceiving objects:   2% (1242/45784), 300.01 KiB | 7 KiB/s\n```\n\nThe network condition really drives me crazy.\n\nPeople who has C/C++ backrground must know that you can't simply copy a linux executable file\nfrom one machine to another and make it run successfully, because sometimes the target machine\nlacks of the matched glibc or other .so files.\n\n```\n$ ldd redis-cli\n    linux-vdso.so.1 =\u003e  (0x00007fffe93fe000)\n    libm.so.6 =\u003e /lib/x86_64-linux-gnu/libm.so.6 (0x00007f17ff5f9000)\n    libpthread.so.0 =\u003e /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f17ff3db000)\n    libc.so.6 =\u003e /lib/x86_64-linux-gnu/libc.so.6 (0x00007f17ff015000)\n    /lib64/ld-linux-x86-64.so.2 (0x00007f17ff919000)\n```\n\nSo I just want a pure go solution，build once, and run everywhere(aha Java).\n\nPlease correct me if I am wrong.\n\n\n\n### Contributing\n\n1. Fork it\n2. Create your feature branch (git checkout -b my-new-feature)\n3. Commit your changes (git commit -am 'Add some feature')\n4. Push to the branch (git push origin my-new-feature)\n5. Create new Pull Request\n\n\n### LICENSE\n\nMIT LICENSE, see [LICENSE](./LICENSE) for details.\n\n### Author\n\n[David Chen (a.k.a holys)](https://github.com/holys)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fholys%2Fredis-cli","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fholys%2Fredis-cli","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fholys%2Fredis-cli/lists"}