{"id":16758399,"url":"https://github.com/kessler/node-assist","last_synced_at":"2025-04-10T17:13:27.228Z","repository":{"id":185629085,"uuid":"660823690","full_name":"kessler/node-assist","owner":"kessler","description":" a personal AI assistant","archived":false,"fork":false,"pushed_at":"2023-08-07T20:29:26.000Z","size":175,"stargazers_count":4,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-04T03:31:52.311Z","etag":null,"topics":["ai","cli","command-line-tool","generative-ai","gpt","gpt-3","gpt-4","llm"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kessler.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","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":"2023-07-01T00:17:44.000Z","updated_at":"2023-08-24T19:54:56.000Z","dependencies_parsed_at":null,"dependency_job_id":"b7aeb31f-464d-42c1-86d1-aa648d543c47","html_url":"https://github.com/kessler/node-assist","commit_stats":{"total_commits":38,"total_committers":1,"mean_commits":38.0,"dds":0.0,"last_synced_commit":"d739fde76aec93c4197dfdb55d26bf2afd29955b"},"previous_names":["kessler/node-assist"],"tags_count":11,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kessler%2Fnode-assist","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kessler%2Fnode-assist/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kessler%2Fnode-assist/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kessler%2Fnode-assist/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kessler","download_url":"https://codeload.github.com/kessler/node-assist/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248055237,"owners_count":21040140,"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":["ai","cli","command-line-tool","generative-ai","gpt","gpt-3","gpt-4","llm"],"created_at":"2024-10-13T04:05:09.591Z","updated_at":"2025-04-10T17:13:27.186Z","avatar_url":"https://github.com/kessler.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# @kessler/assist\n\nPersonal AI assistant / cli tool for accessing GPT.\n\n## install\n\nYou'll need an openai api key.\n\n```\n  $ npm install -g @kessler/assist\n\n  $ kes init\n```\n\n## Interactive mode\n\nThe simplest usage, like a session in chatgpt.\n\n```\n  $ kes\n  send an empty string (hit enter) to exit\n  [me]: hello\n  [chatgpt]:\n  Hello!\n```\n\n## Query command\n\nSends a query and get back the bare response from openai. Process will exit afterwards.\n\nSpecify query immediately in the cli:\n```\n  $ kes query hello\n  Hello!\n```\n\nor read from stdin:\n```\n  $ echo 'hello' | kes query\n  no content provided, waiting for content from stdin... (this is printed on stderr)\n  Hi\n```\n\n## options\nThese options apply to interactive and query commands\n\n### -a, --actor\nSet an actor for this session, See actor command\n\n### -p --preprompt\nPrepend some text to the session, especially useful when ingesting content from stdin.\n\n### -t, --temperature\nSet the temperature for this session.\n\n### -m, --model\nSelect a model for this session.\n\n## Embedding commands\nadd, query and delete embedding.\n\n### add\n\n```\n  $ kes embedding add mycollection \"The little brown fox\"\n```\n\n### query\n\n```\n  $ kes e query mycollection \"the little dark fox\"\n  [{\"similarity\":0.9487346256454315,\"text\":\"the little brown fox\",\"metadata\":{\"created\":1691421248707}}]\n```\n\n### del\nTBD\n\n## Actor commands\nManage actors. Actors will be sent as ```{ \"role\": \"system\" }``` before queries or in interactive mode.\n\nAn interesting discussion on \"role system\" [here](https://community.openai.com/t/the-system-role-how-it-influences-the-chat-behavior/87353/2)\n\nUse actors by specifying the `--actor=[actor]` in `kes` or `kes query`\n\n### add \n\n```\n  $ kes actor add\n  actor name: darkgpt\n  actor prompt: ... prompt text here ...\n```\n### remove\n```\n  $ kes actor remove\n  Select actor to remove: (Use arrow keys)\n❯ - cancel\n  prompt\n  dark\n```\n\n### list\nlist all actors, visibility is a little broken right now :-)\n\n## other stuff\n\n### tasks\n- implement config commands\n- implement history\n\n### resources\n- https://github.com/SBoudrias/Inquirer.js\n- https://the-decoder.com/chatgpt-guide-prompt-strategies/\n- https://prompts.chat/\n- https://blog.tryamigo.com/how-to-use-chatgpt-for-coding/\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkessler%2Fnode-assist","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkessler%2Fnode-assist","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkessler%2Fnode-assist/lists"}