mirror of
https://github.com/aljazceru/goose.git
synced 2026-02-23 15:34:27 +01:00
chore(release): release 0.9.3 (#97)
This commit is contained in:
26
CHANGELOG.md
26
CHANGELOG.md
@@ -5,6 +5,32 @@ All notable changes to this project will be documented in this file.
|
||||
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
||||
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
||||
|
||||
## [0.9.3] - 2024-09-25
|
||||
|
||||
- feat: auto save sessions before next user input (#94)
|
||||
- fix: removed the diff when default profile changes (#92)
|
||||
- feat: add shell-completions subcommand (#76)
|
||||
- chore: update readme! (#96)
|
||||
- chore: update docs again (#77)
|
||||
- fix: remove overly general match for long running commands (#87)
|
||||
- fix: default ollama to tested model (#88)
|
||||
- fix: Resize file in screen toolkit (#81)
|
||||
- fix: enhance shell() to know when it is interactive (#66)
|
||||
- docs: document how to run goose fully from source from any dir (#83)
|
||||
- feat: track cost and token usage in log file (#80)
|
||||
- chore: add link to docs in read me (#85)
|
||||
- docs: add in ollama (#82)
|
||||
- chore: add just command for releasing goose (#55)
|
||||
- feat: support markdown plans (#79)
|
||||
- feat: add version options (#74)
|
||||
- docs: fixing exchange url to public version (#67)
|
||||
- docs: Update CONTRIBUTING.md (#69)
|
||||
- chore: create mkdocs for goose (#70)
|
||||
- docs: fix broken link (#71)
|
||||
- feat: give commands the ability to execute logic (#63)
|
||||
- feat: jira toolkit (#59)
|
||||
- feat: run goose in a docker-style sandbox (#44)
|
||||
|
||||
## [0.9.0] - 2024-09-10
|
||||
|
||||
This also updates the minimum version of exchange to 0.9.0.
|
||||
|
||||
@@ -1,14 +1,14 @@
|
||||
[project]
|
||||
name = "goose-ai"
|
||||
description = "a programming agent that runs on your machine"
|
||||
version = "0.9.0"
|
||||
version = "0.9.3"
|
||||
readme = "README.md"
|
||||
requires-python = ">=3.10"
|
||||
dependencies = [
|
||||
"attrs>=23.2.0",
|
||||
"rich>=13.7.1",
|
||||
"ruamel-yaml>=0.18.6",
|
||||
"ai-exchange>=0.9.2",
|
||||
"ai-exchange>=0.9.3",
|
||||
"click>=8.1.7",
|
||||
"prompt-toolkit>=3.0.47",
|
||||
]
|
||||
|
||||
@@ -45,8 +45,7 @@ def load_provider() -> str:
|
||||
|
||||
|
||||
def load_profile(name: Optional[str]) -> Profile:
|
||||
(profile_name, profile) = ensure_config(name)
|
||||
print(Panel(f"[green]Using profile[/]: {profile_name}, {{{profile.profile_info()}}}"))
|
||||
_, profile = ensure_config(name)
|
||||
return profile
|
||||
|
||||
|
||||
@@ -85,9 +84,9 @@ class Session:
|
||||
) -> None:
|
||||
if name is None:
|
||||
self.name = droid()
|
||||
print(Panel(f"Session name not provided, using generated name: {self.name}"))
|
||||
else:
|
||||
self.name = name
|
||||
self.profile = profile
|
||||
self.status_indicator = Status("", spinner="dots")
|
||||
self.notifier = SessionNotifier(self.status_indicator)
|
||||
|
||||
@@ -146,6 +145,9 @@ class Session:
|
||||
Runs the main loop to handle user inputs and responses.
|
||||
Continues until an empty string is returned from the prompt.
|
||||
"""
|
||||
print(f"[dim]starting session | name:[cyan]{self.name}[/] profile:[cyan]{self.profile or 'default'}[/]")
|
||||
print(f"[dim]saving to {self.session_file_path}")
|
||||
print()
|
||||
message = self.process_first_message()
|
||||
while message: # Loop until no input (empty string).
|
||||
self.notifier.start()
|
||||
@@ -231,16 +233,11 @@ class Session:
|
||||
return session_path(self.name)
|
||||
|
||||
def load_session(self) -> List[Message]:
|
||||
message = (
|
||||
f"session is going to be saved to [bold cyan]{self.session_file_path}[/bold cyan]."
|
||||
+ " You can view it anytime."
|
||||
)
|
||||
print(Panel(message))
|
||||
return read_or_create_file(self.session_file_path)
|
||||
|
||||
def _log_cost(self) -> None:
|
||||
get_logger().info(get_total_cost_message(self.exchange.get_token_usage()))
|
||||
print("You can view the cost and token usage in the log directory", LOG_PATH)
|
||||
print(f"[dim]you can view the cost and token usage in the log directory {LOG_PATH}")
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
|
||||
Reference in New Issue
Block a user