NOTE: There is a very limited number of API requests Google is willing to grant me. Please use your own OAuth credentials by following the instructions below.
A project that integrates the Google Assistant into macOS, using the Google Assistant SDK.
"Google Assistant is now on over 500 million devices” - Scott Huffman @ Google I/O 2018
MacAssistant can bring that number up to 600 million
Downloads are listed under the Releases
tab.
Click here to directly download the latest version.
MacAssistant is currently in Beta.
- What's the weather today?
- My agenda for tomorrow
- When was Benedict Cumberbatch born?
- Does the President of the United States have any children?
MacAssistant is built using Swift 4.2 and Xcode 10
You will need OAuth credentials from the Google Developer Console.
- Create a new project in the Google Developer Console
- Enable the Google Assistant API for that project
- Generate an OAuth credential
- Select the application type of
Other UI
- State that you will be using
User Data
- Download the JSON file
- Rename the file to
google_oauth.json
- Place it in your project at
./MacAssistant/Config/google_oauth.json
- Select the application type of
- Clone the project using
git clone https://github.com/vanshg/MacAssistant.git
- Open the
MacAssistant.xcworkspace
file (notxcproject
) in Xcode - Make sure you've obtained the OAuth Credentials as defined above
- Hit the Play button on the top left
- If you would like to contribute and the Assistant SDK version needs to be updated, clone the repository with the
--recursive
option - Update
VERSION
found at the top of thegen_swift_proto.sh
as necessary - Run
./gen_swfit_proto.sh
- This will build the
grpc-swift
module, and then generate the appropriate Swift files from the.proto
definitions found in thegoogleapis
submodule
- This will build the
Please feel free to contribute to this project. I welcome all contributions and pull requests. There is a list of pending things that need to be worked on in the TODO file. Please follow the Code of Conduct.
This project is licensed under the MIT License - see the LICENSE file for details