Skip to content

Commit e92faaa

Browse files
committed
The configuration is now complete
(help is not quite optimal, but whatever)
1 parent 952467d commit e92faaa

File tree

8 files changed

+200
-114
lines changed

8 files changed

+200
-114
lines changed

src/hackingBuddyGPT/usecases/agents.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
from mako.template import Template
55
from typing import Dict
66

7-
from hackingBuddyGPT.utils.logging import log_conversation, GlobalLogger
7+
from hackingBuddyGPT.utils.logging import log_conversation, Logger, log_param
88
from hackingBuddyGPT.capabilities.capability import (
99
Capability,
1010
capabilities_to_simple_text_handler,
@@ -15,7 +15,7 @@
1515

1616
@dataclass
1717
class Agent(ABC):
18-
log: GlobalLogger = None
18+
log: Logger = log_param
1919

2020
_capabilities: Dict[str, Capability] = field(default_factory=dict)
2121
_default_capability: Capability = None

src/hackingBuddyGPT/usecases/base.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
import argparse
44
from dataclasses import dataclass
55

6-
from hackingBuddyGPT.utils.logging import GlobalLogger
6+
from hackingBuddyGPT.utils.logging import Logger, log_param
77
from typing import Dict, Type, TypeVar, Generic
88

99
from hackingBuddyGPT.utils.configurable import Transparent, configurable
@@ -20,7 +20,7 @@ class UseCase(abc.ABC):
2020
so that they can be automatically discovered and run from the command line.
2121
"""
2222

23-
log: GlobalLogger
23+
log: Logger = log_param
2424

2525
def init(self):
2626
"""

src/hackingBuddyGPT/usecases/viewer.py

100755100644
Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
from starlette.templating import Jinja2Templates
1919

2020
from hackingBuddyGPT.usecases.base import UseCase, use_case
21+
from hackingBuddyGPT.utils.configurable import parameter
2122
from hackingBuddyGPT.utils.db_storage import DbStorage
2223
from hackingBuddyGPT.utils.db_storage.db_storage import (
2324
Message,
@@ -205,8 +206,8 @@ class Viewer(UseCase):
205206
TODOs:
206207
- [ ] This server needs to be as async as possible to allow good performance, but the database accesses are not yet, might be an issue?
207208
"""
208-
log: GlobalLocalLogger
209-
log_db: DbStorage
209+
log: GlobalLocalLogger = None
210+
log_db: DbStorage = None
210211
log_server_address: str = "127.0.0.1:4444"
211212
save_playback_dir: str = ""
212213

@@ -231,7 +232,7 @@ async def save_message(self, message: ControlMessage):
231232
with open(file_path, "a") as f:
232233
f.write(ReplayMessage(datetime.datetime.now(), message).to_json() + "\n")
233234

234-
def run(self):
235+
def run(self, config):
235236
@asynccontextmanager
236237
async def lifespan(app: FastAPI):
237238
app.state.db = self.log_db
@@ -358,8 +359,8 @@ def get_name(self) -> str:
358359

359360
@use_case("Tool to replay the .jsonl logs generated by the Viewer (not well tested)")
360361
class Replayer(UseCase):
361-
log: GlobalRemoteLogger
362-
replay_file: str
362+
log: GlobalRemoteLogger = None
363+
replay_file: str = None
363364
pause_on_message: bool = False
364365
pause_on_tool_calls: bool = False
365366
playback_speed: float = 1.0

0 commit comments

Comments
 (0)