{"id":21175399,"url":"https://github.com/luckman212/1password-csv-fix","last_synced_at":"2026-02-13T15:37:20.124Z","repository":{"id":245453714,"uuid":"818297634","full_name":"luckman212/1password-csv-fix","owner":"luckman212","description":"Fix invalid URLs in 1Password vault","archived":false,"fork":false,"pushed_at":"2024-06-22T14:39:29.000Z","size":140,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-15T15:44:32.165Z","etag":null,"topics":["1password","1password-cli","bitwarden"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/luckman212.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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":"2024-06-21T14:28:43.000Z","updated_at":"2024-06-22T14:38:54.000Z","dependencies_parsed_at":"2024-06-22T07:06:54.445Z","dependency_job_id":null,"html_url":"https://github.com/luckman212/1password-csv-fix","commit_stats":null,"previous_names":["luckman212/1password-csv-fix"],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/luckman212%2F1password-csv-fix","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/luckman212%2F1password-csv-fix/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/luckman212%2F1password-csv-fix/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/luckman212%2F1password-csv-fix/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/luckman212","download_url":"https://codeload.github.com/luckman212/1password-csv-fix/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239867212,"owners_count":19710322,"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","1password-cli","bitwarden"],"created_at":"2024-11-20T16:59:17.708Z","updated_at":"2026-02-13T15:37:15.086Z","avatar_url":"https://github.com/luckman212.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cimg src=\"./icon.png\" width=\"128\" /\u003e\n\n# 1password-csv-fix\n\n### What\n\nThis is a commandline tool to identify and correct invalid URLs in your 1Password vault. It's designed to be run from a Terminal. I built and tested it on macOS, but it should run on Windows or Linux as well with little or no modification.\n\nThe script can identify vault items that have invalid (merged) comma-separated URLs, such as:\n\n```\nhttps://mysite1.foo,http://10.20.30.40,https://myotherurl.foo\n```\n\nIt can repair these items, splitting the URLs back into separate fields so that autofill works properly.\n\n### Why\n\nThis can happen after an export/import from another tool (in my case Bitwarden), due to the differing formats and capabilities of the password managers, combined with the limitations of the CSV format. See [this thread][3] from the 1Password forum for example.\n\n### How\n\n#### Installation\n\nDownload the [latest release][5] and place the `1password-csv-fix.sh` file in your system's `$PATH`. I recommend `/usr/local/bin`, but anywhere will do.\n\nThere are some prerequisites that need to be installed:\n\n- `bash` shell - built into macOS \u0026 Linux, on Windows use [WSL][4] (`wsl --install`)\n- [`op`][2] - official 1Password CLI\n- [`jq`][1] - for JSON processing\n- [`fzf`][6] - for selecting and acting on multiple items\n\n_(if any of these are missing, the script will notify you and abort)_\n\n#### Usage\n\nOpen a Terminal and run `1password-csv-fix.sh`. Without any arguments (or with `-h/--help`), the helptext will be displayed:\n\n```\n$ 1password-csv-fix.sh -h\nusage: 1password-csv-fix.sh [opts]\n    -a,--all                  show all items (tab-separated: ID, Name, URL)\n    -g,--get                  get JSON for a single item\n    -s,--search \u003cquery\u003e       search (regex, within URL)\n    -o,--open \u003citem\u003e          open item in 1Password UI\n    -e,--edit [item]          edit item in 1Password UI (use `last` for most recent)\n    -u,--urls [item]          show URLs (if no item arg is supplied, show all)\n    -l,--long                 list items with invalid CSV URLs\n    -r,--raw                  raw JSON output of `item list`\n    --fix \u003citem\u003e              repair invalid comma-separated URLs from CSV import\n    --fix-multi               use fzf to select multiple items (to fix)\n    --del-multi               use fzf to DELETE multiple items\n    --del-field \u003cfieldname\u003e   recursively remove a field (if empty) from multiple items\n```\n\nTo **fix** a single item (pass the item ID as the argument):\n\n```\n1password-csv-fix.sh --fix zyauxs3ataermfxiv7qaaznmrq\n```\n\nTo fix **multiple items** at once (if there are no invalid URLs detected, this will be a no-op):\n\n```\n1password-csv-fix.sh --fix-multi\n```\n\n#### ⚠️ Danger Zone ⚠️\n\nTo **delete** fields (e.g. if an unused field is left over after an import):\n\n```\n1password-csv-fix.sh --del-field \u003cfieldname\u003e\n```\n\nTo **delete** entire item(s) from the vault:\n\n```\n1password-csv-fix.sh --del-multi\n```\n\n### Help\n\nI've used this to repair hundreds of items and it has worked well, but there could always be edge cases. As with *any* 3rd party tool, please use caution and make sure you have a good [backup][7] of your vault in case something goes wrong.\n\nFeel free to reach out on the forum or file an [issue][8] if you run into a problem!\n\n[1]: https://jqlang.github.io/jq/download/\n[2]: https://1password.com/downloads/command-line\n[3]: https://1password.community/discussion/145700/how-to-create-a-login-item-with-2-urls\n[4]: https://learn.microsoft.com/en-us/windows/wsl/install\n[5]: https://github.com/luckman212/1password-csv-fix/releases\n[6]: https://github.com/junegunn/fzf\n[7]: https://support.1password.com/export/\n[8]: https://github.com/luckman212/1password-csv-fix/issues\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fluckman212%2F1password-csv-fix","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fluckman212%2F1password-csv-fix","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fluckman212%2F1password-csv-fix/lists"}