{"id":16419421,"url":"https://github.com/darkpixel/jrnlsh","last_synced_at":"2025-10-30T15:05:13.825Z","repository":{"id":62572721,"uuid":"404406490","full_name":"darkpixel/jrnlsh","owner":"darkpixel","description":"A very simple CLI shell for jrnl","archived":false,"fork":false,"pushed_at":"2025-09-04T15:43:54.000Z","size":56,"stargazers_count":1,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-10-28T11:05:43.687Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Python","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/darkpixel.png","metadata":{"files":{"readme":"README.md","changelog":"History.md","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":"2021-09-08T15:47:54.000Z","updated_at":"2023-01-13T02:21:42.000Z","dependencies_parsed_at":"2023-02-09T14:16:29.453Z","dependency_job_id":null,"html_url":"https://github.com/darkpixel/jrnlsh","commit_stats":null,"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"purl":"pkg:github/darkpixel/jrnlsh","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/darkpixel%2Fjrnlsh","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/darkpixel%2Fjrnlsh/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/darkpixel%2Fjrnlsh/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/darkpixel%2Fjrnlsh/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/darkpixel","download_url":"https://codeload.github.com/darkpixel/jrnlsh/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/darkpixel%2Fjrnlsh/sbom","scorecard":{"id":322870,"data":{"date":"2025-08-11","repo":{"name":"github.com/darkpixel/jrnlsh","commit":"9ce4bb5effa00dae4b7cd0f708a25111e8685b22"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":3.4,"checks":[{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Code-Review","score":0,"reason":"Found 0/30 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/main.yml:17: update your workflow using https://app.stepsecurity.io/secureworkflow/darkpixel/jrnlsh/main.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/main.yml:25: update your workflow using https://app.stepsecurity.io/secureworkflow/darkpixel/jrnlsh/main.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/main.yml:22","Info:   0 out of   1 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   1 third-party GitHubAction dependencies pinned","Info:   0 out of   1 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/main.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"SAST","score":0,"reason":"no SAST tool detected","details":["Warn: no pull requests merged into dev branch"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}}]},"last_synced_at":"2025-08-18T01:47:57.453Z","repository_id":62572721,"created_at":"2025-08-18T01:47:57.453Z","updated_at":"2025-08-18T01:47:57.453Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":281826734,"owners_count":26568337,"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","status":"online","status_checked_at":"2025-10-30T02:00:06.501Z","response_time":61,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":[],"created_at":"2024-10-11T07:24:19.606Z","updated_at":"2025-10-30T15:05:13.794Z","avatar_url":"https://github.com/darkpixel.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"jrnlsh.py\n=========\n\nThis is a very simple program that makes working with jrnl (and timewarrior) a bit easier.\n\nAny text entered at the prompt will automatically be passed to jrnl to make a new entry.  Text is automatically escaped too.\n\nNo more typing:\n\n    jrnl 'I\\'m going to conquer the world today'\n\nJust type it into jrnlsh:\n\n    jrnl\u003e I'm going to conquer the world today\n    [Entry added to default journal]\n    jrnl\u003e\n\n\n# Commands\n\nThere are a few convenience commands available in jrnlsh:\n\n## edit\nOpen up your jrnl in your preferred editor so you can make changes\n\n## list\nShow today's journal entries\n\n## status\nShow your most recent jrnl entry along with the current timewarrior entry\n\n    jrnl\u003e status\n    2021-09-10 10:00 Just doin' stuff\n\n    Tracking stuff\n      Started 2021-09-10T09:10:00\n      Current            10:14:14\n      Total               1:04:14\n    jrnl\u003e\n\n## start (and time)\nStart a new timewarrior entry.  If there is a running timewarrior entry, it will be stopped and the new one will be started.  You can include tags after the start command.\n\n    jrnl\u003e start customer1 support phone\n    Tracking customer1 support phone\n    Note: 'customer1' is a new tag.\n      Started 2021-09-10T10:16:13\n      Current                  13\n      Total               0:00:00\n    jrnl\u003e\n\n## stop\nStop your currently running timewarrior entry.\n\n    jrnl\u003e stop\n    Recorded customer1 support phone\n      Started 2021-09-10T10:14:24\n      Ended                 17:22\n      Total               0:02:58\n    jrnl\u003e\n\n## fill\nStart a new time warrior entry with the ```:fill``` option.  You can use this in case you stop timewarrior, get up to leave your desk, then your phone rings, and you spend the next 20 minutes distracted on the call and forget to start timewarrior again.  ;)\n\n    jrnl\u003e fill customer1 support phone\n    Backfilled to 2021-09-10T10:17:58\n    Tracking customer1 support phone\n      Started 2021-09-10T10:17:58\n      Current               18:04\n      Total               0:00:06\n    jrnl\u003e\n\n\n## Status\n\nThere are 'day', 'week', 'month', and 'year' commands to display a summary from timewarrior.\n\n    jrnl\u003e week\n    Wk Date       Day Tags     Start      End     Time    Total\n    W2 2023-01-09 Mon pm, proj1 6:24:34 19:35:48 13:11:14 13:11:14\n    W2 2023-01-10 Tue pm, proj2 5:54:01 17:40:26 11:46:25 11:46:25\n    W2 2023-01-11 Wed pm, proj3 6:18:22 17:45:00 11:26:38 11:26:38\n    W2 2023-01-12 Thu pm, proj4 6:16:52 18:05:55 11:49:03 11:49:03\n                                                          48:13:20\n    jrnl\u003e\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdarkpixel%2Fjrnlsh","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdarkpixel%2Fjrnlsh","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdarkpixel%2Fjrnlsh/lists"}