diff --git a/README.md b/README.md index 1ebe323a5..943bd81e7 100644 --- a/README.md +++ b/README.md @@ -1,22 +1,3 @@ -# :wave: Welcome Hacktoberfest Contributors! -We're excited to have you join us for Hacktoberfest 2024! Check out issues labeled for ``Hacktoberfest``! - -At [Refact.ai](https://refact.ai), we're currently building an Autonomous AI Agent that will handle engineering tasks end-to-end. Exciting, isn't it? - -We already have an AI Coding Assistant, designed to empower developers. It helps you get work done faster with context-aware code completion and integrated in-IDE chat. - -We're building the future of programming, and you can join us today! - -To show our appreciation, if you submit just one Pull Request (PR) to any of our open issues, we'll reward you with 3 months of free access to the [Refact.ai](https://refact.ai) tool! :rocket: - -Get started by checking out our open issues and the [contributing.md](https://github.com/smallcloudai/refact-lsp/blob/main/CONTRIBUTING.md) for all the details you need to start making an impact. - -To maintain a positive and respectful community, we encourage all users to review our [Code of Conduct](https://github.com/smallcloudai/refact-lsp/blob/main/CODE_OF_CONDUCT.md). - -Join our community in our [Discord server](https://www.smallcloud.ai/discord) where you can get help, discuss ideas and be aware of our new releases and news. - -Happy coding! :computer::sparkles: - # Refact Agent (Rust) This is a small executable written in Rust, a part of the Refact Agent project. Its main job is to live @@ -28,51 +9,69 @@ and usages in many popular programming languages. Yes, it looks like an LSP server to IDE, hence the name. It can also work within a python program, check out the [Text UI](#cli) below, you can talk about your project in the command line! -## Progress +--- -- [x] Code completion with RAG -- [x] Chat with tool usage -- [x] definition() references() tools -- [x] vecdb search() with scope -- [x] @file @tree @web @definition @references @search mentions in chat -- [x] locate() uses test-time compute to find good project cross-section -- [x] Latest gpt-4o gpt-4o-mini -- [x] Claude-3-5-sonnet -- [x] Llama-3.1 (passthrough) -- [ ] Llama-3.2 (passthrough) -- [ ] Llama-3.2 (scratchpad) -- [x] [Bring-your-own-key](https://docs.refact.ai/byok/) -- [ ] Memory (--experimental) -- [ ] Docker integration (--experimental) -- [ ] git integration (--experimental) -- [x] pdb python debugger integration (--experimental) -- [ ] More debuggers -- [x] Github integration (--experimental) -- [ ] Gitlab integration -- [ ] Jira integration +# Key Features +*this would be added soon* + +--- + +# Demo Video +*this would be added soon* + +--- +# Table of Contents -## Refact Agent +- [Installation](#installation) + - [VS Code](#vs-code) + - [JetBrains IDEs](#jetbrains-ides) + - [VS Classic](#vs-classic) + - [Sublime Text](#sublime-text) + - [Neovim](#neovim) + - [Compiling and Running](#compiling-and-running) +- [Things to Try](#things-to-try) +- [Telemetry](#telemetry) +- [Caps File](#caps-file) +- [AST](#ast) +- [CLI](#cli) +- [Progress and Future Plans](#progress-and-future-plans) +- [Archiecture](#archiecture) +- [Contributing](#contributing) +- [Follow Us and FAQ](#follow-us-and-faq) +- [License](#license) + +--- + +## Installation Installable by the end user: -* [VS Code](https://github.com/smallcloudai/refact-vscode/) -* [JetBrains IDEs](https://github.com/smallcloudai/refact-intellij) -* [VS Classic](https://github.com/smallcloudai/refact-vs-classic/) -* [Sublime Text](https://github.com/smallcloudai/refact-sublime/) -* [Neovim](https://github.com/smallcloudai/refact-neovim) +### VS Code +https://github.com/smallcloudai/refact-vscode/ + +### JetBrains IDEs +https://github.com/smallcloudai/refact-intellij + +### VS Classic +https://github.com/smallcloudai/refact-vs-classic/ + +### Sublime Text +https://github.com/smallcloudai/refact-sublime/ -Refact Self-Hosting Server: +### Neovim +https://github.com/smallcloudai/refact-neovim + +### Refact Self-Hosting Server: * [Refact](https://github.com/smallcloudai/refact/) -Other important repos: +### Other important repos: * [Documentation](https://github.com/smallcloudai/web_docs_refact_ai) * [Chat UI](https://github.com/smallcloudai/refact-chat-js) - -## Compiling and Running +### Compiling and Running It will automatically pick up OPENAI_API_KEY, or maybe you have Refact cloud key or Refact Self-Hosting Server: @@ -85,6 +84,7 @@ target/debug/refact-lsp --address-url http://my-refact-self-hosting/ --api-key $ Try `--help` for more options. +--- ## Things to Try @@ -132,7 +132,7 @@ curl http://127.0.0.1:8001/v1/chat -k \ "max_tokens": 20 }' ``` - +--- ## Telemetry @@ -148,6 +148,7 @@ you see it in `.cache/refact/telemetry`. The files are human-readable. When using Refact self-hosted server, telemetry goes to the self-hosted server, not to the cloud. +--- ## Caps File @@ -157,6 +158,8 @@ If it's a URL, the executable fetches `$URL/refact-caps` to know what to do. Thi because the configuration does not need to be copy-pasted among engineers who use the server. +--- + ## AST Supported languages: @@ -170,6 +173,7 @@ Supported languages: You can still use Refact for other languages, just the AST capabilities will be missing. +--- ## CLI @@ -181,3 +185,67 @@ cp target/release/refact-lsp python_binding_and_cmdline/refact/bin/ pip install -e python_binding_and_cmdline/ ``` +--- + +## Progress and Future Plans + +- [x] Code completion with RAG +- [x] Chat with tool usage +- [x] definition() references() tools +- [x] vecdb search() with scope +- [x] @file @tree @web @definition @references @search mentions in chat +- [x] locate() uses test-time compute to find good project cross-section +- [x] Latest gpt-4o gpt-4o-mini +- [x] Claude-3-5-sonnet +- [x] Llama-3.1 (passthrough) +- [ ] Llama-3.2 (passthrough) +- [ ] Llama-3.2 (scratchpad) +- [x] [Bring-your-own-key](https://docs.refact.ai/byok/) +- [ ] Memory (--experimental) +- [ ] Docker integration (--experimental) +- [ ] git integration (--experimental) +- [x] pdb python debugger integration (--experimental) +- [ ] More debuggers +- [x] Github integration (--experimental) +- [ ] Gitlab integration +- [ ] Jira integration + +--- + +## Archiecture +*this would be added soon* + +___ + +## Contributing + +- Contributing [CONTRIBUTING.md](CONTRIBUTING.md) +- [GitHub issues](https://github.com/smallcloudai/refact/issues) for bugs and errors +- [Community forum](https://github.com/smallcloudai/refact/discussions) for community support and discussions +If you wish to contribute to this project, feel free to explore our [current issues](https://github.com/smallcloudai/refact/issues) or open new issues related to (bugs/features) using our [CONTRIBUTING.md](CONTRIBUTING.md). + + +--- + +## Follow Us and FAQ + +- [Contributing](CONTRIBUTING.md) +- [Refact Docs](https://docs.refact.ai/) +- [GitHub Issues](https://github.com/smallcloudai/refact/issues) for bugs and errors +- [Community Forum](https://github.com/smallcloudai/refact/discussions) for community support and discussions +- [Discord](https://www.smallcloud.ai/discord) for chatting with community members +- [Twitter](https://twitter.com/refact_ai) for product news and updates + +--- + +## License + +Refact is free to use for individuals and small teams under the BSD-3-Clause license. If you wish to use Refact for Enterprise, please [contact us](https://refact.ai/contact/). + + + + + + + +