-
Notifications
You must be signed in to change notification settings - Fork 77
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Verify that keyboard command input is working. #37
Comments
Additional testing with debug logging on. OA> list commands
[2020-09-08 10:20:14,651] DEBUG MainThread oa.util.repl: list <- commands
OA> help
Help Stuff
OA> root mind
[2020-09-08 10:20:47,758] DEBUG MainThread oa.util.repl: root <- mind
OA> boot mind
[2020-09-08 10:22:45,634] DEBUG MainThread oa.util.repl: boot <- mind
OA> stop listening
[2020-09-08 10:22:50,119] DEBUG MainThread oa.util.repl: stop <- listening
OA> help
Help Stuff
OA> h
Help Stuff
OA> test
Unrecognized command: test
OA> list command
[2020-09-08 10:24:30,554] DEBUG MainThread oa.util.repl: list <- command
OA> this is a test
[2020-09-08 10:24:38,257] DEBUG MainThread oa.util.repl: this <- is a test
OA> b list commands
[2020-09-08 10:24:47,420] DEBUG MainThread oa.util.repl: b <- list commands
OA> q |
First word by default appears to be the part that the command is intended for. e.g. That's great for extensibility, but general assumption without documentation I believe would be for the command to always be interpreted by the minds unless otherwise specified. I propose a compromise of defaulting to sending all commands except for control commands to the minds.
|
#39 submitted for implementation of the proposition. Not too much trouble to change if we want to swap it up. |
Interesting thread..this prompt was meant more for controlling the hub, not just a mind, and to maybe get to scriptability. One current problem is there aren't that many interesting things to call, so usage is extra unclear. Just a few days ago I was looking at the Similar to how Also, logging tends to get in the way of using the console -- maybe there's a better way to implement this? -- for now, something like |
Ok, so stepping back a bit to make sure I follow the logic, because there's a lot to unpack there. Multiple HubsIf I'm understanding you correctly, you see the potential of multiple hubs. Some of them may be remote, some of them may be local(?). Local hubs, I'm not sure I see the draw. I think we can handle everything from one and have the abilities tie in. The topic of remote hubs gets into the idea of interconnected-ness and how we want to architect the possibility (if any possibility) of clustering hubs across multiple systems and treating them as one, or keeping them as multiple individuals and allowing one another to influence each other or act on their behalf. Long term, is that a capability that is desired? Probably so. There's a few things I can think that we might want to address with that model at some point. Client server model vs distributed mode... whether to directly merge all hubs into one or treat them as extended capabilities with addressing... etc. Short term, eh. I can see not painting ourselves into a corner, but I don't think this does that. Prompt ModesIf I'm understanding correctly, instead of prefixing commands with the module name, you're suggesting changing the module being acted against, like: OA> mode mind
Changed to mind module.
OA:mind> list commands
OA:mind> mode voice
Changed to voice module.
OA:voice> list commands But also allowing flat prompt context like: OA> voice I am the one who knocks!
(Audio plays) Does that track? Reminds me of Cisco iOS for their switches between the configuration modes. Not opposed to it, but I think my main line of thinking was that if someone with less experience with the other technologies that we are used to gets ahold of this and starts experimenting, we need to explicitly call out that syntax in the docs or at the prompt. To be honest, as you probably picked up from earlier comments, it wasn't clear to me to begin with either. I hear the call for flexibility, but I want to make sure to balance it with making it intuitive as well. |
Re: logging, yeah... I burned some time looking at that today as well. I was looking at something like curses to maybe organize the screen, but that starts to get iffy with cross platform. I think the logs are still valuable and have a purpose on screen... just maybe located differently. |
Bug report
Describe the Bug
Attempting to use keyboard input to issue commands beyond some of the basic items in the hub command registry doesn't seem to be working.
To Reproduce
Expected Behavior
Typed command is run exactly as it would be if spoken.
System Stats
macOS Catalina 10.15.6
Python 3.8.5
The text was updated successfully, but these errors were encountered: