{"id":18013764,"url":"https://github.com/sinyo-matu/onepassword-cli","last_synced_at":"2025-03-26T17:30:32.351Z","repository":{"id":57648965,"uuid":"318519558","full_name":"sinyo-matu/onepassword-cli","owner":"sinyo-matu","description":"A wrapper lib for 1password-cli","archived":false,"fork":false,"pushed_at":"2021-04-24T04:41:26.000Z","size":41,"stargazers_count":1,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-22T03:31:51.277Z","etag":null,"topics":["1password-cli","rust"],"latest_commit_sha":null,"homepage":"","language":"Rust","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/sinyo-matu.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}},"created_at":"2020-12-04T13:07:24.000Z","updated_at":"2021-09-13T02:50:14.000Z","dependencies_parsed_at":"2022-08-27T23:22:41.903Z","dependency_job_id":null,"html_url":"https://github.com/sinyo-matu/onepassword-cli","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sinyo-matu%2Fonepassword-cli","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sinyo-matu%2Fonepassword-cli/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sinyo-matu%2Fonepassword-cli/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sinyo-matu%2Fonepassword-cli/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sinyo-matu","download_url":"https://codeload.github.com/sinyo-matu/onepassword-cli/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245702085,"owners_count":20658539,"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":["1password-cli","rust"],"created_at":"2024-10-30T03:24:23.453Z","updated_at":"2025-03-26T17:30:31.901Z","avatar_url":"https://github.com/sinyo-matu.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# onepassword-cli\n\n[![crate.io](https://img.shields.io/crates/v/onepassword-cli)](https://crates.io/crates/onepassword-cli)\n\nA wrapper for [1password-cli](https://support.1password.com/command-line-getting-started/). It intent to offering a similar usage with the cli, make it easy-to-use.\nFor using this crate, you need to setup 1password-cli first.\nPlease see [1password-cli getting started](https://support.1password.com/command-line-getting-started/)\nFor now, only part of the cli utility have been implemented\n\n- get\n  - [x] account\n  - [x] document\n  - [x] item\n  - [x] totp (one time password)\n  - [ ] group\n  - [x] user\n  - [ ] vault\n  - [ ] template\n  - [ ] group\n- list\n  - [x] documents\n  - [x] items\n  - [ ] events\n  - [ ] groups\n  - [ ] templates\n  - [x] users\n  - [ ] vaults\n- create\n  - [x] document\n  - [ ] group\n  - [ ] item\n  - [ ] user\n  - [ ] vault\n- add\n  - [ ] group\n  - [ ] user\n- delete\n  - [x] document\n  - [ ] group\n  - [x] item\n  - [ ] trash\n  - [ ] user\n  - [ ] vault\n- edit\n  - [ ] document\n  - [ ] group\n  - [ ] item\n  - [ ] user\n  - [ ] vault\n- encode\n  - [ ] encode\n\n# Installation\n\n- Find on [crates.io](https://crates.io/crates/onepassword-cli)\n- Use [cargo-edit](https://crates.io/crates/cargo-edit)\n\n```sh\ncargo add onepassword-cli\n```\n\n# How to use\n\n- get account info\n\n```rust\nextern crate dotenv;\nextern crate onepassword_cli;\nuse onepassword_cli::OpCLI;\n\ndotenv::dotenv().unwrap();\nlet pass = dotenv::var(\"OP_PASS\").unwrap();\nlet op_cli = OpCLI::new_with_pass(\"my\", \u0026pass)\n    .await\n    .unwrap();\nlet account = op_cli.get().account().run().await;\nassert!(account.is_ok())\n```\n\n- get a login item include username password\n\n```rust\nextern crate dotenv;\nextern crate onepassword_cli;\nuse onepassword_cli::OpCLI;\n\ndotenv::dotenv().unwrap();\nlet pass = dotenv::var(\"OP_PASS\").unwrap();\nlet op_cli = OpCLI::new_with_pass(\"my\", \u0026pass).await.unwrap();\nlet item_lite = op_cli.get().item_lite(\"facebook\").run().await;\nassert!(item_lite.is_ok());\nprintln!(\"{:?}\", \u0026item_lite.unwrap().password);\n```\n\n- create a document\n\n```rust\nextern crate dotenv;\nextern crate onepassword_cli;\nuse onepassword_cli::OpCLI;\n\ndotenv::dotenv().unwrap();\nlet pass = dotenv::var(\"OP_PASS\").unwrap();\nlet op_cli = OpCLI::new_with_pass(\"my\", \u0026pass)\n    .await\n    .unwrap();\nlet doc = op_cli.create().document(\"auth.log\").run().await;\nassert!(doc.is_ok())\n```\n\n- get one time password\n\n```rust\nextern crate dotenv;\nextern crate onepassword_cli;\nuse onepassword_cli::OpCLI;\n\ndotenv::dotenv().unwrap();\nlet pass = dotenv::var(\"OP_PASS\").unwrap();\nlet op_cli = OpCLI::new_with_pass(\"my\", \u0026pass)\n    .await\n    .unwrap();\nlet otps = op_cli.get().totp(\"facebook\").run().await;\nassert!(otps.is_ok())\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsinyo-matu%2Fonepassword-cli","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsinyo-matu%2Fonepassword-cli","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsinyo-matu%2Fonepassword-cli/lists"}