Skip to content

Hussbogo/Interactive

 
 

Repository files navigation

AGiXT Interactive

GitHub GitHub GitHub

GitHub npm

Discord Twitter

AGiXT_New

AGiXT Interactive is a NextJS application allowing interaction with AGiXT agents with extensive administration options.

Videos

Demonstration of creating a new user and setting up an AGiXT agent connected to GitHub:

video1.mp4

Demonstration of creating a new user and setting up an AGiXT agent's mandatory context training:

video2.mp4

Getting Started

If you don't already have AGiXT, follow this link for instructions to set it up.

git clone https://github.com/agixt/interactive
cd interactive

Create a .env file and set the AGIXT_SERVER to your AGiXT server and AGIXT_AGENT for the default agent to use, then save and run the development server locally.

AGIXT_SERVER=https://localhost:7437
AGIXT_AGENT=XT

Local Development

Install dependencies and run the development server.

npm install
npm run dev

Access at http://localhost:3437

Environment Variables

The preferred method of configuration for standalone NextJS applications is using a .env file. The application will automatically handle the NEXT_PUBLIC_ prefix internally, so you should set variables without this prefix in your .env file.

The following environment variables can be set:

Variable Name Default Value Description
APP_NAME AGiXT The name of the AGiXT application.
APP_DESCRIPTION An AGiXT application. Description of the AGiXT application.
APP_URI http://localhost:3437 The URI of the AGiXT application.
THEME_DEFAULT_MODE dark The default theme mode for AGiXT.
TZ America/New_York The timezone used by the application.
DEFAULT_THEME_MODE dark Alternative setting for the default theme mode.
ADSENSE_ACCOUNT `` Google AdSense account ID if applicable.
ENV development Environment mode (development/production).
LOG_VERBOSITY_CLIENT 3 Client-side logging verbosity level.
PRIVATE_ROUTES /chat,/team,/settings/ Routes that require authentication.
AGIXT_SERVER http://agixt:7437 The server address for AGiXT.
ALLOW_EMAIL_SIGN_IN true Whether to allow email sign-in.
GITHUB_CLIENT_ID `` GitHub OAuth client ID.
GITHUB_SCOPES repo user:email read:user workflow GitHub OAuth scopes.
GOOGLE_CLIENT_ID `` Google OAuth client ID.
GOOGLE_SCOPES https://www.googleapis.com/auth/userinfo.profile https://www.googleapis.com/auth/userinfo.email https://www.googleapis.com/auth/calendar.events.owned https://www.googleapis.com/auth/contacts.readonly https://www.googleapis.com/auth/gmail.modify Google OAuth scopes.
MICROSOFT_CLIENT_ID `` Microsoft OAuth client ID.
MICROSOFT_SCOPES offline_access User.Read Mail.Send Calendars.ReadWrite Calendars.ReadWrite.Shared Microsoft OAuth scopes.
TESLA_CLIENT_ID `` Tesla OAuth client ID.
TESLA_SCOPES openid offline_access user_data vehicle_device_data vehicle_cmds vehicle_charging_cmds vehicle_location Tesla OAuth scopes.
COOKIE_DOMAIN localhost Domain for cookies.
AGIXT_API_KEY `` API key for AGiXT.
AGIXT_CONVERSATION - The name of the conversation in AGiXT.
INTERACTIVE_UI chat The interactive UI mode for AGiXT.
AGIXT_FOOTER_MESSAGE Powered by AGiXT The footer message displayed in AGiXT.
AGIXT_RLHF true Whether RLHF (Reinforcement Learning from Human Feedback) is enabled.
AGIXT_FILE_UPLOAD_ENABLED true Whether file upload is enabled.
AGIXT_VOICE_INPUT_ENABLED true Whether voice input is enabled.
AGIXT_ALLOW_MESSAGE_EDITING true Whether to allow message editing.
AGIXT_ALLOW_MESSAGE_DELETION true Whether to allow message deletion.
AGIXT_SHOW_OVERRIDE_SWITCHES tts,websearch Which override switches to show.
AGIXT_AGENT AGiXT The default agent used in AGiXT.
AGIXT_PROMPT_NAME Think About It Default prompt name.
AGIXT_PROMPT_CATEGORY Default Default prompt category.
AGIXT_COMMAND `` Default command to execute.
AGIXT_COMMAND_MESSAGE_ARG message Argument name for command messages.
AGIXT_CHAIN `` Default chain to execute.
AGIXT_CHAIN_ARGS {} Arguments for the default chain.

Configuration can also be set via search params / query params, if enabled via the AGIXT_ENABLE_SEARCHPARAM_CONFIG setting.

Configuration Priority

The configuration system follows this priority order:

  1. Search parameters / query parameters (if enabled)
  2. Environment variables set in the .env file
  3. Default values defined in the application

Example Advanced Configuration

For a more customized setup, you might use a .env file like:

APP_NAME=AGiXT
APP_DESCRIPTION=Custom AGiXT Implementation
AGIXT_SERVER=https://my-agixt-api.example.com
AGIXT_AGENT=CustomAgent
AGIXT_SHOW_SELECTION=agent,conversation,prompt
AGIXT_FILE_UPLOAD_ENABLED=true
AGIXT_VOICE_INPUT_ENABLED=true
AGIXT_SHOW_OVERRIDE_SWITCHES=tts,websearch,vision

Contributing

Contributions are welcome! Please see the Contributing Guide for more information.

About

AGiXT Interactive Web Interface in NextJS

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 91.9%
  • Python 5.1%
  • JavaScript 1.5%
  • Jupyter Notebook 0.7%
  • CSS 0.7%
  • Shell 0.1%