MCPcopy Index your code
hub / github.com/digital-dream-labs/vector-cloud

github.com/digital-dream-labs/vector-cloud @2.0.1.6076

Chat with this repo
repository ↗ · DeepWiki ↗ · release 2.0.1.6076 ↗ · + Follow
7,002 symbols 10,581 edges 176 files 688 documented · 10%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Vector-cloud

Programs that make Vector talk to the cloud!

Building

To make it easy to cross-compile binaries on your computer that will run on Vector you'll first need the armbuilder docker image. It can be generated by running..

# make docker-builder

To build vic-cloud, run...

# make vic-cloud

To build vic-gateway, run...

# make vic-gateway

Example Customization

Let's have Vector refuse to give users information on Area 51 and then explictly state that all other information requests have been approved.

First we make the following changes to internal/voice/stream/context.go

diff --git a/internal/voice/stream/context.go b/internal/voice/stream/context.go
index 1d5df2c..564b22f 100644
--- a/internal/voice/stream/context.go
+++ b/internal/voice/stream/context.go
@@ -1,7 +1,9 @@
 package stream

 import (
-       "bytes"
+       "regexp"
+       
+       "bytes"
        "context"
        "encoding/json"
        "fmt"
@@ -155,6 +157,14 @@ func sendIntentResponse(resp *chipper.IntentResult, receiver Receiver) {

 func sendKGResponse(resp *chipper.KnowledgeGraphResponse, receiver Receiver) {
        var buf bytes.Buffer
+
+       found, _ := regexp.MatchString("area fifty one", resp.QueryText)
+       if found {
+         resp.SpokenText = "Information regarding Area Fifty One is classified. The Illuminati High Council has been notified of this request."
+       } else {
+         resp.SpokenText = "Information Request Approved. " + resp.SpokenText
+       }
+
        params := map[string]string{
                "answer":      resp.SpokenText,
                "answer_type": resp.CommandType,

Next compile, copy to Vector, and reboot.

grant@lord-humungus vector-cloud % make vic-cloud                        
echo `go version` && cd /Users/grant/src/vector-cloud && go mod download
  ... BUILD LOG OUTPUT ...
Packed 1 file.
grant@lh % ssh root@<VECTOR_IP> mount -o remount,rw /
grant@lh % scp build/vic-cloud root@<VECTOR_IP>:/anki/bin
vic-cloud                                              100% 4800KB   3.6MB/s   00:01    
grant@lh %                                                 
grant@lh % ssh root@<VECTOR_IP> /sbin/reboot            

And test after the reboot by saying "Hey Vector... Question... What is Area 51?" and "Hey Vector... Question... What is DogeCoin?"

Extension points exported contracts — how you extend this code

RequestHandler (Interface)
(no doc) [7 implementers]
internal/token/token.go
MsgSender (Interface)
(no doc) [13 implementers]
internal/voice/send.go
Struct (Interface)
(no doc) [114 implementers]
internal/clad/clad.go
ErrorListener (Interface)
ErrorListener defines an interface that can be used as a common definition to inject error handlers into dependent modul [3 …
internal/util/util.go
Time (Interface)
Time defines some time package functions that are useful to stub out during testing. [2 implementers]
internal/testing/time/time.go
Server (Interface)
Server represents a running server waiting for connections. Client connections can be accessed by pulling new clients of [1 …
internal/ipc/conn.go
Option (FuncType)
Option defines an option that can be set on the server
internal/logcollector/opts.go
Option (FuncType)
Option defines an option that can be set on the token server
internal/jdocs/opts.go

Core symbols most depended-on inside this repo

Size
called by 549
internal/clad/clad.go
Write
called by 411
internal/ipc/conn.go
Read
called by 296
internal/ipc/conn.go
Println
called by 149
internal/log/log_normal.go
CreateChannel
called by 71
gateway/ipc_manager.go
Header
called by 71
gateway/verbose_logging.go
CloseNotify
called by 71
gateway/verbose_logging.go
Error
called by 47
internal/util/multierror.go

Shape

Method 5,398
Struct 742
Function 658
TypeAlias 95
Interface 65
Class 32
FuncType 10
Enum 2

Languages

Go97%
C++3%

Modules by API surface

internal/proto/external_interface/messages.pb.go2,754 symbols
internal/proto/external_interface/shared.pb.go669 symbols
internal/proto/external_interface/cube.pb.go470 symbols
internal/proto/external_interface/external_interface.pb.go433 symbols
internal/proto/external_interface/settings.pb.go296 symbols
internal/clad/gateway/messageRobotToExternal.go267 symbols
internal/clad/gateway/messageExternalToRobot.go249 symbols
gateway/message_handler.go160 symbols
internal/proto/vision/vision.pb.go151 symbols
internal/clad/cloud/docs.go109 symbols
internal/proto/external_interface/behavior.pb.go107 symbols
internal/clad/gateway/switchboard.go95 symbols

For agents

$ claude mcp add vector-cloud \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page